Skip to content

๐ŸŽต Multi-track polyphonic AI sequencer with concentric rings. Inspired by Playtronica's Orbita, enhanced with Meta's MusicGen for real-time sample generation.

License

Notifications You must be signed in to change notification settings

adrianwedd/orbitr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

21 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŽต Orbitr - AI-Powered Circular Step Sequencer

CI License: MIT Next.js TypeScript

A web-based polyphonic circular step sequencer inspired by Playtronica's Orbita, enhanced with AI-powered sample generation using Meta's MusicGen/AudioCraft.

Orbitr Demo

โœจ Features

๐ŸŽน Multi-Track Polyphonic Sequencer

  • 4 concentric track rings - Each with independent controls
  • 16-step patterns per track
  • Polyphonic playback - All tracks play simultaneously
  • Visual feedback - Animated playhead and step indicators

๐Ÿค– AI Sample Generation

  • MusicGen integration - Generate samples from text prompts
  • Multiple quality modes - Draft (fast) and HQ (high quality)
  • Smart caching - Instant recall of previously generated samples
  • Genre packs - Pre-configured sample generation templates

๐ŸŽ›๏ธ Professional Controls

  • Per-track controls - Volume, mute, solo, clear
  • Per-step parameters - Gain, probability, timing offset
  • Global controls - BPM (40-200), swing, master volume
  • Transport - Play/stop with reverse playback option

โŒจ๏ธ Keyboard Shortcuts

  • Space - Play/Stop
  • G - Generate sample for selected step
  • C - Clear selected step
  • 1-9, 0 - Select steps 1-10
  • Q, W, E, R, T, Y - Select steps 11-16
  • โ†/โ†’ - Adjust BPM
  • Shift+Click - Multi-select steps

๐Ÿš€ Quick Start

Prerequisites

  • Node.js 18+ and npm
  • Python 3.9+ (for AI backend)
  • Modern browser with Web Audio API support

Installation

  1. Clone the repository
git clone https://github.com/adrianwedd/orbitr.git
cd orbitr
  1. Install dependencies
npm install
  1. Set up Python backend (optional, for AI generation)
cd backend
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
pip install -r requirements.txt
cd ..
  1. Configure environment
cp .env.example .env
# Edit .env if needed
  1. Run the application
npm run dev
# Frontend: http://localhost:3001
# Backend: http://localhost:8000

# Or run individually:
npm run dev:frontend  # Frontend only
npm run dev:backend   # Backend only

๐Ÿš€ Quick Deploy to GitHub Pages

ORBITR works perfectly on GitHub Pages with enhanced sample packs:

# Build static version
npm run build:static

# Or just push to main branch for automatic deployment
git push origin main

Features on GitHub Pages:

  • โœ… Full 4-track sequencer (O-R-B-I rings)
  • โœ… Detroit/Berlin 90s sample packs ๐Ÿ”ฅ
  • โœ… UK Garage skippy beats
  • โœ… Web Audio API polyphonic playback
  • โœ… Drag & drop file upload
  • โœ… Intelligent mock AI generation

Live Demo: https://yourusername.github.io/orbitr

See DEPLOYMENT.md for full deployment options including real AI generation.

๐ŸŽฎ How to Use

  1. Select a track - Click on the O, R, B, or I buttons
  2. Add steps - Click on the circles in the ring to activate steps
  3. Assign samples - Load audio files or generate with AI
  4. Adjust parameters - Use the track controls panel
  5. Press Play - Watch your pattern come to life!

Sample Generation

  • Enter a prompt like "kick drum" or "synth bass"
  • Choose quality (Draft for quick iteration, HQ for final)
  • Generated samples are automatically cached

Sample Packs

Choose from pre-configured genre packs:

  • ๐ŸŽต Lo-Fi Hip Hop
  • ๐Ÿค– Techno Essentials
  • ๐Ÿ”ฅ Trap Bangers
  • ๐Ÿ  House Grooves
  • ๐ŸŒ™ Ambient Textures

๐Ÿ—๏ธ Architecture

Frontend (Next.js/React)
โ”œโ”€โ”€ Multi-track sequencer engine
โ”œโ”€โ”€ Web Audio API scheduler
โ”œโ”€โ”€ Real-time visualization
โ””โ”€โ”€ Zustand state management

Backend (FastAPI/Python)
โ”œโ”€โ”€ MusicGen integration
โ”œโ”€โ”€ Audio processing
โ”œโ”€โ”€ Caching layer
โ””โ”€โ”€ Sample management

See ARCHITECTURE.md for detailed technical documentation.

๐Ÿ—บ๏ธ Roadmap

See ROADMAP.md for the full development plan.

Next Features

  • Pattern save/load
  • MIDI export
  • Euclidean rhythm generator
  • Per-step effects
  • Pattern chaining
  • WebRTC collaboration

๐Ÿค Contributing

We welcome contributions! Please see CONTRIBUTING.md for details.

Development

# Run tests
npm test

# Run linter
npm run lint

# Type check
npm run type-check

# Build for production
npm run build

๐Ÿ“ License

This project is licensed under the MIT License - see the LICENSE file for details.

๐Ÿ™ Acknowledgments

๐Ÿ› Found a Bug?

Please open an issue with details about the problem.

๐Ÿ’ก Have an Idea?

We'd love to hear it! Submit a feature request.

๐Ÿ“Š Status

  • Current Version: 0.1.0 (Alpha)
  • Status: Active Development
  • Browser Support: Chrome 90+, Firefox 88+, Safari 14+, Edge 90+

Built with โค๏ธ for the music production community

Demo | Documentation | Discord

About

๐ŸŽต Multi-track polyphonic AI sequencer with concentric rings. Inspired by Playtronica's Orbita, enhanced with Meta's MusicGen for real-time sample generation.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •