About muSpace

muSpace is a collaborative music listening platform where users can create or join spaces to share and enjoy music together. It allows users to add songs via YouTube URLs, maintain a song queue, and vote on songs. The song with the highest votes is played next, ensuring a democratic music experience for all participants.

Features

User Authentication

Users can create an account and log in to access the platform. Authentication is implemented using secure, scalable methods.

Create or Join a Space

Users can create a new space to start a collaborative music session. Other users can join existing spaces by entering a space code or URL.

Add Songs

Add songs to the queue by pasting YouTube URLs. The platform automatically validates and queues the song.

Voting System

Each song in the queue can be upvoted or downvoted. Songs with the most votes are prioritized and played next.

Song Queue Management

The queue dynamically updates based on votes. Users can view the current song and the next in line.

Real-Time Updates

Spaces are updated in real-time, ensuring a seamless collaborative experience.

Responsive Design

The platform is fully responsive and works smoothly on devices of all sizes.

Tech Stack

Frontend

  • Framework: Next.js
  • Styling: Tailwind CSS
  • State Management: React Context API / Redux

Backend

  • Framework: Next.js API Routes
  • Database: PostgreSQL (using Prisma ORM)
  • Authentication: NextAuth.js v5

Other Tools

  • Real-Time Communication: WebSockets
  • Hosting: Vercel (for production deployment)