A revolutionary decentralized Digital Audio Workstation (DAW) and NFT marketplace built on Bitcoin SV blockchain. Create, produce, tokenize, and trade music as blockchain assets with professional-grade audio tools and Web3 monetization.
Developed by The Bitcoin Corporation LTD.
UK Registered Company No. 16735102
Bitcoin Music is part of the Bitcoin Apps Suite (BAPS) ecosystem - a comprehensive collection of blockchain-powered applications where every app has its own token ($BMusic) creating a sustainable economic model for creators and users. This professional DAW combines cutting-edge audio production capabilities with blockchain technology, enabling musicians to:
- Create & Produce: Full-featured DAW with virtual instruments, effects, and recording
- Tokenize: Convert tracks, stems, and samples into tradeable NFT assets
- Monetize: Issue fungible tokens (.ft) as revenue shares in music sales
- Trade: List music NFTs on the integrated Bitcoin-Exchange marketplace
- Collaborate: Share projects and split royalties automatically via smart contracts
- Multi-track Recording: Up to 32 simultaneous audio/MIDI tracks
- Virtual Instruments: Built-in synthesizers, samplers, and drum machines
- Audio Effects: Professional effects chain (reverb, delay, compression, EQ, etc.)
- MIDI Support: Full MIDI recording, editing, and playback
- Waveform Editor: Visual audio editing with precision tools
- Mixer Console: Professional mixing interface with automation
- Real-time Audio Engine: Powered by Tone.js for low-latency performance
- NFT Minting: Package audio files as
.nftcontainers on BSV blockchain - Revenue Tokenization: Issue
.ft(fungible tokens) representing shares in music revenue - On-chain Storage: Permanent, immutable storage of master recordings
- HandCash Wallet: Seamless authentication and payments via HandCash
- Smart Royalties: Automated royalty distribution to collaborators
- Proof of Creation: Cryptographic timestamps for copyright protection
- Track NFTs: Mint complete songs as unique digital assets
- Stem NFTs: Sell individual instrument tracks for remixing
- Sample Packs: Create tradeable collections of sounds and loops
- Album NFTs: Bundle multiple tracks with artwork and metadata
- Limited Editions: Create scarcity with numbered releases
- Unlockable Content: Bonus materials for NFT holders
- Bitcoin-Exchange Integration: List music NFTs on the central BAPS exchange
- P2P Trading: Direct artist-to-fan transactions without intermediaries
- Revenue Shares: Sell percentage ownership in future streaming/sales revenue
- Auction System: Time-based auctions for rare releases
- Secondary Market: Royalties on all resales
- Global Distribution: Instant worldwide access via blockchain
The $BMusic token powers the Bitcoin Music ecosystem:
- Studio Access: Unlock premium instruments and effects
- Storage Rights: Pay for blockchain storage of audio files
- Trading Fees: Reduced fees for NFT marketplace transactions
- Governance: Vote on platform features and artist grants
- Staking Rewards: Earn from platform revenue sharing
- Artist Support: Fund emerging artists through DAO treasury
- Frontend: Next.js 14, React 18, TypeScript
- Audio Engine: Tone.js, Web Audio API, WaveSurfer.js
- 3D Graphics: Three.js, React Three Fiber
- Blockchain: Bitcoin SV (BSV) SDK, HandCash Connect
- State Management: Zustand
- Styling: Tailwind CSS v3
- Authentication: NextAuth.js with Google/HandCash OAuth
- File Processing: JSZip for NFT containers
- Deployment: Vercel
- Node.js 18+ and npm
- HandCash wallet account (get one at https://handcash.io)
- HandCash App credentials (from https://dashboard.handcash.io)
- Modern browser with Web Audio API support
git clone https://github.com/bitcoin-apps-suite/bitcoin-music.git
cd bitcoin-musicnpm installCreate a .env.local file in the root directory:
# NextAuth Configuration
NEXTAUTH_URL=http://localhost:3007
NEXTAUTH_SECRET=your-secret-key-here
# Google OAuth
GOOGLE_CLIENT_ID=your-google-client-id
GOOGLE_CLIENT_SECRET=your-google-client-secret
# HandCash Configuration
HANDCASH_APP_ID=your-handcash-app-id
HANDCASH_APP_SECRET=your-handcash-secret
HANDCASH_REDIRECT_URL=http://localhost:3007/auth/handcash/callback
# BSV Network
REACT_APP_NETWORK=mainnet # or 'testnet'
# Exchange URL
REACT_APP_EXCHANGE_URL=https://exchange.bitcoin-wallet.appnpm run devOpen http://localhost:3007 in your browser.
bitcoin-music/
โโโ app/ # Next.js App Router
โ โโโ api/ # API routes
โ โ โโโ auth/ # NextAuth endpoints
โ โ โโโ music/ # Music NFT endpoints
โ โโโ studio/ # DAW interface pages
โ โโโ marketplace/ # NFT marketplace
โ โโโ layout.tsx # Root layout
โ โโโ page.tsx # Landing page
โโโ components/ # React components
โ โโโ AudioEngine/ # Core audio components
โ โโโ DAW/ # DAW interface components
โ โโโ NFT/ # NFT minting/trading
โ โโโ Taskbar.tsx # Navigation taskbar
โ โโโ Providers.tsx # Context providers
โโโ lib/ # Utilities and services
โ โโโ audio/ # Audio processing
โ โโโ blockchain/ # BSV integration
โ โโโ nft/ # NFT container logic
โโโ public/ # Static assets
โโโ styles/ # Global styles
- Create Project: Click "New Project" to start a blank session
- Add Tracks: Use the "+" button to add audio or MIDI tracks
- Record Audio: Click the record button and select input source
- Add Virtual Instruments: Drag instruments from the sidebar to MIDI tracks
- Apply Effects: Add effects to tracks via the mixer channel strips
- Mix & Master: Use the mixer for levels, panning, and automation
- Export: Render your project as WAV, MP3, or blockchain NFT
Space- Play/PauseR- Start/Stop RecordingS- Solo selected trackM- Mute selected trackCtrl/Cmd + Z- UndoCtrl/Cmd + Shift + Z- RedoCtrl/Cmd + S- Save projectDelete- Delete selected item
- Complete Your Track: Finish mixing and mastering
- Click "Mint NFT": Opens the tokenization modal
- Set Metadata:
- Title, artist, album, genre
- Cover artwork (image upload)
- Description and credits
- Choose Token Type:
- Unique NFT: One-of-a-kind collectible
- Limited Edition: Set supply (e.g., 100 copies)
- Revenue Share: Issue .ft tokens for royalty splitting
- Set Pricing:
- Fixed price in BSV
- Auction with reserve price
- Free with optional tips
- Mint to Blockchain: Confirm HandCash transaction
- List on Exchange: Automatically listed on Bitcoin-Exchange
Music NFTs use the .nft container format (ZIP archive):
track.nft
โโโ manifest.json # Metadata and blockchain info
โโโ audio/
โ โโโ master.wav # High-quality master
โ โโโ preview.mp3 # Streaming preview
โ โโโ stems/ # Individual tracks (optional)
โโโ artwork/
โ โโโ cover.jpg # Album artwork
โโโ metadata.json # Extended metadata
โโโ royalties.json # Revenue split configuration
โโโ signatures.json # Cryptographic proofs
The Bitcoin Music marketplace integrates with the central Bitcoin-Exchange:
- Browse Collections: Discover new music by genre, artist, or trend
- Preview Tracks: Stream watermarked previews before purchase
- Purchase NFTs: Buy with BSV via HandCash wallet
- Resell NFTs: List your collection with automatic royalties to creators
- Track Earnings: Dashboard showing sales, streams, and royalty income
- Direct Sales: One-time purchase of music NFTs
- Streaming Royalties: Earn from platform plays
- Sync Licensing: License music for media use
- Remix Rights: Sell stems for derivative works
- Subscription Tiers: Recurring revenue from fan clubs
- Tips & Donations: Direct fan support
npm run dev- Start development server on port 3007npm run build- Build for productionnpm start- Start production servernpm run lint- Run ESLintnpm run format- Format code with Prettier
npm run build
vercel --prodThe app auto-deploys to bitcoin-music.vercel.app on push to main.
docker build -t bitcoin-music .
docker run -p 3007:3007 bitcoin-music- Watermarking: Preview streams include audio watermarks
- Encryption: Master files encrypted in NFT containers
- Access Control: Token-gated content for NFT holders
- DRM Options: Optional copy protection for downloads
- Non-Custodial: Users control private keys via HandCash
- Immutable Records: Permanent proof of creation date
- Transparent Royalties: All splits recorded on-chain
- Decentralized Storage: No single point of failure
We welcome contributions from developers and musicians!
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Successfully merged PRs earn $BMusic tokens! Rewards based on:
- Feature impact and complexity
- Code quality and documentation
- Bug fixes and optimizations
- Creative audio tools and instruments
This project is licensed under the MIT License - see the LICENSE file for details.
- Tone.js team for the incredible Web Audio framework
- Bitcoin SV community for scalable blockchain infrastructure
- HandCash for seamless wallet integration
- Three.js for stunning 3D visualizations
- All contributing musicians and developers
- Launch $BMusic token on BSV blockchain
- Deploy to Bitcoin-Exchange marketplace
- Mobile app (iOS/Android) development
- Advanced MIDI editing tools
- AI-powered mixing assistant
- Collaborative real-time sessions
- VST plugin support
- Live streaming integration
- Decentralized music distribution network
- Cross-chain NFT bridges
- Virtual concert platform
- DAO governance implementation
- Machine learning sample generation
- Spatial audio and VR support
- Hardware controller integration
- Global music rights management
- GitHub: github.com/bitcoin-apps-suite/bitcoin-music
- Twitter: @BitcoinMusic (Coming Soon)
- Discord: discord.gg/bitcoinmusic (Coming Soon)
- Email: support@bitcoin-music.app
Bitcoin Music is transforming how music is created, owned, and monetized. By combining professional audio production tools with blockchain technology, we're empowering artists to maintain control of their work while connecting directly with fans globally.
Start creating your musical legacy on the blockchain today!
Part of the Bitcoin Apps Suite | Powered by Bitcoin SV | Built for Musicians, by Musicians
"Your Music, Your Rights, Your Revenue"
