Prerequisites
- Node.js >= 21.7.1
- Chrome >= 127.0.6533.119
- PostgreSQL >= 14.13
Setup
- Systemd: Copy
myserver.service
to your systemd folder (if you want to host the application on a remote or local server).
- Install Node.js & PostgreSQL: Ensure both are installed, with
npm
and psql
available.
- Install Dependencies: Run
npm install
in the project root.
- Create DB: Run
createdb <databasename>
, and add it to PG_DATABASE
in .env
.
- Configure Environment:
- Copy
.env.example
to .env
.
- Update DB details in
.env
.
- Setup DB: Run
psql -d <databasename> < lib/schema_data.sql
to load schema and seed data.
- Start App: Run
npm start
.
- Access: Open Chrome at the
HOST:PORT
defined in .env
.
Application Overview
This app lets users share and collaborate on playlists, with song playback via the YouTube Iframe API.
Features
- Public Playlists: Lists all public playlists.
- Your Playlists:
- View, create, edit, delete playlists.
- Add/remove contributors (must be registered users).
- Contribution Playlists:
- Manage playlists where you're a contributor (add, delete, edit songs).
- Accepts specific YouTube URLs:
https://www.youtube.com/watch?v=...
https://youtu.be/...
https://m.youtube.com/watch?v=...