Muza is a collaborative music streaming platform where users can create spaces, invite people to join, and stream music together. The admin curates a queue of songs, and members can vote to determine the next song to be played.
- Frontend: Next.js
- Backend: WebSockets
- Database & Caching: Redis (Pub/Sub)
- Users can create spaces and invite others.
- Admins manage the song queue.
- Members vote on which song should play next.
- Real-time updates using WebSockets.
- Queue System Improvements: More robust queue management.
- Batch Writing to Database: Optimize database interactions.
- Rate Limiting: Prevent spamming and excessive requests.
- Some bugs and glitches need fixing.
- Janky user experience in certain scenarios.
- Performance optimizations required.
- Clone the repository:
git clone <repo-url> cd muza
- Install dependencies:
npm install
- Run the development server:
npm run dev
#System Design (2 Parts)
Contributions are welcome! If you find a bug or have suggestions, feel free to open an issue or submit a pull request.
MIT License