-
Install system dependencies:
- Docker/PostgreSQL >= 17
- Node.js >= 24
- pnpm >= 10
- pdftk >= 3, poppler-utils (optional, for module book extraction)
-
Install npm dependencies:
pnpm install
-
Copy
packages/api/.env.sampletopackages/api/.envand fill in the required environment variables. -
Create the database container:
docker run --name docker-db -e POSTGRES_USER=user -e POSTGRES_PASSWORD=password -e POSTGRES_DB=test -v /var/lib/data -p 5432:5432 -d postgres:17-alpine
-
Run database migrations:
pnpm --filter api db:migrate # migrate schema pnpm --filter api db:seed # seed with default users etc.
- Start the development server for both the API and the UI:
pnpm -r dev
- The API server will be available at
http://localhost:8000and the UI athttp://localhost:3000.