Your Complete Rehearsal Toolkit
Transform any audio source into a ready-to-use rehearsal project in minutes. RehearseKit automatically separates stems, detects tempo, and generates DAW project filesβso you can focus on making music.
- π΅ Audio Input: Upload MP3, WAV, or FLAC files, or paste YouTube URLs
- πΌ AI Stem Separation: Isolate vocals, drums, bass, and other instruments using Demucs
- β±οΈ Tempo Detection: Automatic BPM analysis with manual override
- βοΈ Waveform Trimming: Visual region selection to process only specific portions
- πΉ DAW Integration: Auto-generated .dawproject files (Studio One, Bitwig, Reaper, Cubase)
- ποΈ Professional DAW Mixer: Multi-channel mixer with vertical faders, solo/mute, and real-time preview
- π Quality Upgrade: One-click reprocessing from fast to high quality mode
- π¦ Download Packages: All stems + project file in organized ZIP structure
- π¨ Modern UI: Dark theme with professional DAW-style interface
- π Authentication: Google OAuth + optional email/password
- π€ User Accounts: Job history and personalized experience
- π Self-Hosted: Deploy locally or on TrueNAS for zero cloud costs
-
Clone and configure
git clone https://github.com/UnTypeBeats/RehearseKit.git cd RehearseKit cp config/.env.example .env # Edit .env with your configuration
-
Start all services
docker-compose up
-
Access the application
- Frontend: http://localhost:3000
- Backend API: http://localhost:8000
- API Docs: http://localhost:8000/docs
- Docker Desktop (Mac) or Docker Engine (Linux/WSL)
- 8GB+ RAM recommended for AI processing
- ~10GB disk space for models
For detailed setup instructions, see docs/guides/local-development.md
RehearseKit/
βββ frontend/ # Next.js 14 application
βββ backend/ # FastAPI application + Celery workers
βββ websocket/ # WebSocket service for real-time updates
βββ infrastructure/ # Deployment configurations (Terraform, TrueNAS)
βββ docs/ # Documentation
β βββ guides/ # User and developer guides
β βββ api/ # API documentation
β βββ archive/ # Historical documentation
β βββ ideas/ # Feature proposals
βββ scripts/ # Deployment and setup scripts
βββ config/ # Configuration templates
β βββ .env.example # Environment variables template
β βββ docker-compose.dev.yml
β βββ docker-compose.prod.yml
βββ docker-compose.yml # Local development setup
- Frontend: Next.js 14, React Query, WaveSurfer.js, Web Audio API, shadcn/ui
- Backend: FastAPI, SQLAlchemy, Celery, Alembic
- AI/Audio: Demucs (stem separation), librosa (tempo detection), FFmpeg, yt-dlp
- Infrastructure: Docker, PostgreSQL 16, Redis 7
- Deployment: TrueNAS SCALE, Cloudflare Tunnel
βββββββββββββββ βββββββββββββββ βββββββββββββββ
β Frontend ββββββΆβ Backend ββββββΆβ Worker β
β (Next.js) β β (FastAPI) β β (Celery) β
βββββββββββββββ βββββββββββββββ βββββββββββββββ
β β β
β ββββββββ΄βββββββ β
β β β β
βΌ βΌ βΌ βΌ
βββββββββββββββ βββββββββββ βββββββββββ βββββββββββ
β WebSocket β βPostgreSQLβ β Redis β β Storage β
β Service β β 16 β β 7 β β Local β
βββββββββββββββ βββββββββββ βββββββββββ βββββββββββ
- Quick Start Guide - Get started in 5 minutes
- Development Guide - Contributing and development setup
- Deployment Guide - Production deployment options
- TrueNAS Deployment - Self-hosted setup
- Cubase Import Guide - DAW project import
- API Documentation - REST API reference
# See docs/guides/truenas-deployment.md for complete instructions
cd infrastructure/truenas
./deploy.sh# Use production configuration
docker-compose -f config/docker-compose.prod.yml up -dAll deployment scripts are located in scripts/deployment/:
deploy-truenas.sh- TrueNAS deployment automationbuild-and-push.sh- Build and push Docker images
We welcome contributions! Please see CONTRIBUTING.md for:
- Code of conduct
- Development workflow
- Pull request process
- Coding standards
Version: Stage 3 Complete (Stage 4 in progress)
Status: Production Ready β
Live Demo: rehearsekit.uk
- β Waveform trimming with visual feedback
- β Professional DAW-style mixer
- β Quality upgrade workflow
- β Cubase import integration
- π Authentication system (Google OAuth)
- π User accounts and job ownership
- π Repository cleanup and reorganization
This project is licensed under the MIT License - see the LICENSE file for details.
- Demucs - AI-powered stem separation
- WaveSurfer.js - Audio waveform visualization
- shadcn/ui - Beautiful UI components
- FastAPI - Modern Python web framework
- Documentation: docs/
- Issues: GitHub Issues
- Live Site: rehearsekit.uk
Built with β€οΈ for musicians who want to spend less time on setup and more time making music.