Thanks to visit codestin.com
Credit goes to github.com

Skip to content

NickFlach/ChessAI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

AudioNoise Web


πŸŽ›οΈ AudioNoise Web
Professional Audio DSP Platform

Real-time audio processing with team collaboration, subscriptions, and social features

Features β€’ Quick Start β€’ Subscriptions β€’ API β€’ Architecture β€’ Contributing

TypeScript React Web Audio API Stripe PostgreSQL


✨ Overview

AudioNoise Web is a professional-grade browser-based audio effects platform with:

  • 10 DSP Effects β€” Ported from Linus Torvalds' AudioNoise C algorithms
  • Team Workspaces β€” Collaborate with RBAC permissions
  • Subscription Tiers β€” Free, Pro, and Studio plans
  • Social Features β€” Profiles, follows, likes, comments
  • AI Suggestions β€” Intelligent effect recommendations
  • GDPR Compliant β€” Full data export and deletion

πŸš€ Features

πŸŽ›οΈ DSP Effects Engine

Effect Description
Echo Delay with feedback and LFO modulation
Flanger Classic modulated delay sweeping
Phaser 4-stage allpass cascade with LFO
Low Pass Warm tone shaping biquad filter
High Pass Clean up muddy frequencies
Band Pass Isolate frequency ranges
Notch Surgical frequency removal
All Pass Phase shifting
Distortion Soft/hard clipping saturation
Growling Bass Subharmonic generator with harmonics

πŸ’Ό Team Workspaces

  • Create team workspaces for collaboration
  • Role-based access control (Admin, Editor, Viewer)
  • Invite members via email
  • Share recordings within workspaces

πŸ’³ Subscription Tiers

Feature Free Pro ($9.99/mo) Studio ($19.99/mo)
Effects in chain 3 10 Unlimited
Recordings 5 50 Unlimited
Storage 100MB 2GB 20GB
AI suggestions 10/mo 100/mo Unlimited
Export formats WAV WAV, MP3, OGG WAV, MP3, OGG, FLAC
Team workspaces ❌ ❌ βœ…
API access ❌ βœ… βœ…
Priority support ❌ ❌ βœ…

πŸ‘₯ Social Features

  • User Profiles β€” Bio, avatar, social links
  • Follow System β€” Follow your favorite creators
  • Likes & Comments β€” Engage with public recordings
  • Notifications β€” Stay updated on activity

πŸ€– AI Effect Suggestions

  • Bring your own API key (OpenAI, Anthropic, Ollama)
  • Encrypted API key storage (AES-256-GCM)
  • Real-time audio analysis
  • One-click effect application

πŸ”’ Security & Compliance

  • ZKP Authentication β€” Zero-knowledge proof login
  • AES-256-GCM Encryption β€” For sensitive data
  • GDPR Compliant β€” Data export and deletion
  • Audit Logging β€” Full activity tracking

πŸƒ Quick Start

# Clone the repository
git clone https://github.com/yourusername/audionoise-web.git
cd audionoise-web

# Install dependencies
npm install

# Set up environment variables
cp .env.example .env

# Push database schema
npm run db:push

# Start development server
npm run dev

Environment Variables

# Database
DATABASE_URL=postgresql://user:pass@localhost:5432/audionoise

# Authentication
JWT_SECRET=your-secret-key

# Encryption (64 hex characters = 32 bytes)
ENCRYPTION_MASTER_KEY=0123456789abcdef...

# Stripe (optional)
STRIPE_SECRET_KEY=sk_...
STRIPE_WEBHOOK_SECRET=whsec_...
STRIPE_PRICE_PRO=price_...
STRIPE_PRICE_STUDIO=price_...

# Admin
ADMIN_USER_IDS=user-id-1,user-id-2

πŸ’³ Subscriptions

AudioNoise Web uses Stripe for subscription management.

Setting Up Stripe

  1. Create products and prices in Stripe Dashboard
  2. Set up webhook endpoint: /api/v1/billing/webhook
  3. Configure environment variables

Webhook Events Handled

  • checkout.session.completed
  • customer.subscription.created
  • customer.subscription.updated
  • customer.subscription.deleted
  • invoice.paid
  • invoice.payment_failed

πŸ”Œ API

Authentication

POST /api/v1/auth/register
POST /api/v1/auth/login
POST /api/v1/auth/refresh
POST /api/v1/auth/logout

Recordings

GET    /api/v1/recordings
POST   /api/v1/recordings
GET    /api/v1/recordings/:id
PUT    /api/v1/recordings/:id
DELETE /api/v1/recordings/:id
GET    /api/v1/recordings/public

Billing

GET  /api/v1/billing/subscription
POST /api/v1/billing/checkout
POST /api/v1/billing/portal
GET  /api/v1/billing/usage
POST /api/v1/billing/cancel

Workspaces

GET    /api/v1/workspaces
POST   /api/v1/workspaces
GET    /api/v1/workspaces/:id
PUT    /api/v1/workspaces/:id
DELETE /api/v1/workspaces/:id
POST   /api/v1/workspaces/:id/invite
GET    /api/v1/workspaces/:id/members

Social

GET  /api/v1/social/profile
PUT  /api/v1/social/profile
GET  /api/v1/social/users/:username
POST /api/v1/social/follow/:userId
GET  /api/v1/social/recordings/:id/likes
POST /api/v1/social/recordings/:id/comments
GET  /api/v1/social/notifications

GDPR

GET  /api/v1/gdpr/consent
POST /api/v1/gdpr/consent
POST /api/v1/gdpr/export
POST /api/v1/gdpr/delete

πŸ—οΈ Architecture

audionoise-web/
β”œβ”€β”€ client/                     # React frontend
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ components/         # UI components
β”‚   β”‚   β”‚   β”œβ”€β”€ ui/             # shadcn/ui primitives
β”‚   β”‚   β”‚   β”œβ”€β”€ pedalboard.tsx  # Effect chain UI
β”‚   β”‚   β”‚   β”œβ”€β”€ error-boundary.tsx
β”‚   β”‚   β”‚   └── ...
β”‚   β”‚   β”œβ”€β”€ hooks/              # React hooks
β”‚   β”‚   β”œβ”€β”€ lib/
β”‚   β”‚   β”‚   └── dsp/            # AudioNoise DSP library
β”‚   β”‚   └── pages/
β”‚   └── public/
β”‚       └── worklets/           # AudioWorklet processors
β”œβ”€β”€ server/                     # Express backend
β”‚   β”œβ”€β”€ auth.ts                 # Authentication
β”‚   β”œβ”€β”€ stripe.ts               # Billing
β”‚   β”œβ”€β”€ workspaces.ts           # Team workspaces
β”‚   β”œβ”€β”€ social.ts               # Social features
β”‚   β”œβ”€β”€ analytics.ts            # Event tracking
β”‚   β”œβ”€β”€ gdpr.ts                 # GDPR compliance
β”‚   β”œβ”€β”€ encryption.ts           # AES-256-GCM
β”‚   └── middleware/
β”‚       └── tier-gating.ts      # Feature limits
β”œβ”€β”€ shared/                     # Shared code
β”‚   β”œβ”€β”€ schema.ts               # Database schema (Drizzle)
β”‚   └── tiers.ts                # Subscription definitions
└── .github/workflows/          # CI/CD (local only)

πŸ› οΈ Tech Stack

Layer Technology
Frontend React 18, TypeScript, Tailwind CSS
UI Components shadcn/ui, Radix Primitives
Audio Web Audio API, AudioWorklet
Backend Express, Node.js
Database PostgreSQL, Drizzle ORM
Payments Stripe
Auth JWT, ZKP
Build Vite

🀝 Contributing

We welcome contributions! See CONTRIBUTING.md for guidelines.

Areas we'd love help with:

  • 🎸 New DSP effects (reverb, compressor, EQ)
  • πŸ§ͺ Test coverage improvements
  • πŸ“± Mobile experience
  • 🌍 Internationalization
  • πŸ“š Documentation

πŸ“œ License

This project is licensed under the GNU General Public License v2 β€” see LICENSE.


πŸ™ Acknowledgments

  • AudioNoise β€” Original C DSP algorithms
  • Linus Torvalds β€” DSP algorithm design
  • shadcn/ui β€” Beautiful component primitives
  • Stripe β€” Payment infrastructure

Built with πŸ’œ for audio professionals

Releases

No releases published

Sponsor this project

Packages

No packages published

Contributors 3

  •  
  •  
  •