SongRack lets Bands easily create and manage a repertoire, build setlists via drag-and-drop, and export those to different PDFs.
It features real-time collaboration, an undo history per user, as well as different types of categories users can sort songs with, including color coding.
SongRack is available at setlist.lschlierf.de.
There is a test user account already created and populated with songs and setlists, so you can play around without signing up.
The username is testuser and the password is password (very secure, I know).
Feel free to play around here, but don't save anything important, since the account and all its data is reset to its original state once you close the tab.
If you want to try out the real-time collaboration, you can have a friend log in with the same credentials or simply use another browser window.
This Repo is split in two: frontend and backend. Both are written in TypeScript.
The frontend uses React with Vite and Tailwind CSS. Some UI components are from Shadcn/UI with icons from lucide-react. PDF exports are generated using React-pdf.
The backend is an Express.js Server written in TypeScript. It uses the ZenStack ORM to connect to a PostgreSQL database hosted on Neon. Real-time interactivity is achieved using Socket.io.
