BytebeatCloud is a modern, social, and mobile-friendly environment for experimenting with bytebeat and floatbeat audio.
It aims to go beyond traditional “paste code and play” tools by offering publishing features, user profiles, and an evolving community-driven experience.
BytebeatCloud brings a social layer on top of bytebeat. You can still generate a simple share link, but you can also:
- publish posts,
- browse popular or recent compositions,
- favorite works,
- fork other users’ expressions,
- and build a profile with your own creations.
This makes it closer to a creative platform than a standalone tool.
The audio engine and expression interpreter uses Javascript. this makes this app closer to web based implementations than the original C-based ones.
While most bytebeat composer apps allow arbitrary lengths, BytebeatCloud encourages tiny programs by limiting the expression size to 4096 characters.
- Three audio modes: uint8 (classic bytebeat), int8 (signed), and float (-1 to 1)
- Configurable sample rate: 8kHz to 48kHz
- Real-time expression editing: hear changes as you type
- Master gain control: adjust output volume
- Create posts: publish your bytebeat expressions with title, description, and tags
- Draft mode: save work-in-progress without publishing
- Fork posts: remix other users' expressions with attribution
- Share links: generate shareable URLs for any expression
- WAV export: export your bytebeat as a WAV file
- Video export: export your bytebeat as a video with waveform visualization
- Playlists: create and share playlists
- Explore feed: browse recent, trending, and weekly challenge posts
- Personalized feed: see posts from users you follow
- Tags: categorize and filter posts by tags
- Length categories: filter by expression complexity
- User profiles: customize username, bio, and social links
- Follow system: follow other creators
- Favorites: save posts you like
- Mentions: tag other users with @username
- In-app notifications: get notified of follows, favorites, forks, and mentions
- Bytebeat of the Week: themed creative challenges every Saturday
- Hall of Fame: browse past winners
- Community voting: most-favorited entry wins
- Dark mode: multiple color themes
- Responsive design: works on desktop and mobile
- Progressive Web App: install on your device
- Live waveform visualizer: see your audio in real-time
- Auto-skip play modes: autoplay next track in a list after some time
- Play queue: organize play queue, reorder or shuffle items
First, install NPM dependencies.
npm installThe backend uses Supabase. To start Supabase locally, run
npx supabase startThis will start a local Supabase project, prepare the database, and print connection info that you'll need in next step.
Create a .env file at project root and put the following content, replacing URL and key with the printed info.
# Project URL
NEXT_PUBLIC_SUPABASE_URL=http://127.0.0.1:54321
# Publishable key
NEXT_PUBLIC_SUPABASE_ANON_KEY=sb_publishable_*****
Then, run the frontend.
npm run devInstall dependencies
npm installRun unit tests:
npm run test:unitInstall dependencies and browsers:
npm install
npx playwright installIn another terminal, run tests:
npm run test:e2e:uiThis command will start the Supabase local instance, the front end dev server and run the tests in UI mode.
- User registration and login
- Manage profile (edit username, delete account)
- Create and share musical expressions (share link)
- Create posts
- Edit posts
- Explore posts (recent, popular)
- Add to favorites
- Transport controls
- Visualizer
- Mobile layout
- Fork posts
- Dark mode
- Responsive design
- Progressive Web App
- Length categories
- Arbitrary sample rate
- On-the-fly update of edited expressions
- Follow users
- Feed (global and personalized)
- Recent posts
- Trending posts on last 7 days
- In-app notifications
- Master gain
- Support SR up to 48kHz
- Post description
- Tags
- Signed int mode
- Video export
- Bytebeat of the Week
- Report posts or users
- Block/unblock users
- Comments
- Playlists
Coming later
- Change history
- Offline mode
- Offline pre-rendering
- Reject silent/too loud posts
- Moderator tools
- Pin posts on profile
- Search posts by name
- C-compatible badge