Inspiration

We were hanging out with some friends and had music playing on a speaker using Spotify Jam, but our friends who did not have Spotify Premium could not contribute, so we wanted to make a similar system that worked with YouTube links that everyone can access.

What it does

Users can access a website where they can provide links to songs on YouTube, and our Raspberry Pi will manage a playlist/queue of songs from various users and stream them to a speaker.

How we built it

We built both the frontend and backend with JavaScript (Node.js) using Vite, React, and TailwindCSS for the frontend and express for the backend. We also used Python for the backend for facilitating commands to our Raspberry Pi.

Challenges we ran into

  • Improper planning
  • Using third party APIs
  • Getting bluetooth audio working properly with the Raspberry Pi
  • Debugging the queue system

Accomplishments that we're proud of

  • We built a full stack application
  • Getting everything to work on our Raspberry Pi server

What we learned

  • Hosting websites on remote servers
  • Bluetooth audio on Linux
  • Challenges associated with managing a queue of songs

What's next for PiJam

We will likely continue to optimize and flesh out our project beyond this initial prototype.

Share this project:

Updates