The server code for the watchlist server. Watchlist is an application where you can track your progress on movies and series.
- TypeScript 100%
Watchlist Server
A self-hosted media watchlist server powered by TMDB.
Requirements
- Bun >= 1.3.11
- Docker + Docker Compose
Installation
1. Obtain a TMDB API key
- Create an account at themoviedb.org
- Go to Settings > API in your account dashboard
- Request an API key (select "Developer" for personal use)
- Copy the API Key (v3)
- Paste it into
.envasAPI_KEY_TMDB=<your_key>
2. Configure environment
Either:
- Copy
.env.exampleto.envand edit the values manually, or - Run
secrets.shto auto-generate secure values for secrets and passwords (will ask for a tmdb api key)
cp .env.example .env
# or
bash secrets.sh
3. Start db, install deps & start server
docker compose up -d
bun i
bun run server
Development
Environment Variables
| Variable | Description | Must change default |
|---|---|---|
API_KEY_TMDB |
TMDB API key | Yes |
POSTGRES_USER |
Database username | No |
POSTGRES_PASSWORD |
Database password | Yes |
POSTGRES_DATABASE |
Database name | No |
APP_HOST |
Address the Express server binds to | No |
APP_PORT |
Port the server listens on | No |