About this project
OpenBand is an open-source, local-first music production platform that runs primarily in the browser, built with Expo Router, React Native Web and TypeScript. It is positioned as a single place to move a musical idea through the stages the README describes as start, hear, shape, finish, and keep or share, without requiring an account to explore.
Core capabilities described in the repository include multitrack audio recording and arrangement, MIDI with a piano roll, a looper and chord track, a sampler, synth and beatmaker, a guitar pedalboard with amp/cab modeling chains, stem separation (optionally via local Demucs), tuning and time/pitch tools, and a mixer with effects, buses, snapshots, LUFS metering, mastering and export. Focused creative modes and 3D studio rooms are also mentioned. Collaboration features such as presence, CRDT-based editing and branching are listed as evolving and dependent on optional backend services.
Availability is explicitly framed as an alpha. The web app is publicly reachable as a demo; Electron desktop, Android and iOS are build-from-source targets rather than signed store releases. The README states that no mobile store listing or signed desktop download is claimed until a verified release link exists, and warns users to keep independent backups of important work.
Running locally requires Node.js 22 or newer and npm; Python 3.12 is needed only for local Demucs stem separation. The frontend can start without a .env file using development fallbacks, which the README notes are for exploration and testing rather than proof of production services. An optional Express API uses SQLite by default for local development, with Supabase/PostgreSQL and object storage as hosted options. Desktop builds run through Electron behind an OpenBandNative bridge, and frontend screens are not supposed to call Electron APIs directly.
Architecture is layered: the UI (Expo Router, React, React Native Web, TypeScript) talks to a typed music and project core, which connects to local project and asset stores, Web Audio / expo-audio / WASM audio, and the optional API. Styling uses NativeWind/Tailwind tokens, state uses React context and Zustand where appropriate, and validation includes TypeScript, Vitest, Playwright smoke tests and architecture graph checks. Useful commands include npm run lint, npm test, npm run test:legacy, npm run test:graph-sdd, npm run graph:ci and npm run build, with backend typechecking via npx tsc --noEmit.
Documentation is unusually thorough for an alpha: product strategy, architecture, build setup, feature implementation status, roadmap, contracts, architecture decision records, marketing foundation and screenshot/UI audit specs. Contribution is PR-first, uses GitHub Spec Kit for larger changes, and has an AGENTS.md policy. The repository is under MIT terms per its badge, though the README notes that dependencies, models, samples and creator-provided material retain their own terms, and that attribution and third-party notices remain a launch-review item. The project name is described as a working name pending brand clearance.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.