Skip to Content
DevelopersGetting started

Getting started

Prerequisites

  • Node.js 20.19 or newer (22 recommended)
  • pnpm 10. The repo pins its own version, so any pnpm 10+ will switch automatically. With Corepack: corepack enable pnpm
  • Docker, for local PostgreSQL and Redis

Run the API

git clone <pennyplan-api repository> cd pennyplan-api cp .env.example .env docker compose up -d # PostgreSQL + Redis pnpm install # also generates the Prisma client pnpm dev # http://localhost:3000

Check it is alive:

curl http://localhost:3000/v1/health # {"status":"ok"} curl http://localhost:3000/v1/health/ready # also confirms the database is reachable

Interactive API docs are served at http://localhost:3000/docs outside production.

Run the web app

Point the web app at your running API:

NEXT_PUBLIC_API_URL=http://localhost:3000

Run these docs

cd pennyplan-docs pnpm install pnpm dev # http://localhost:3990

Before you open a pull request

In the API repository:

pnpm lint && pnpm typecheck && pnpm test && pnpm build

Also read the nearest CLAUDE.md file to the code you are changing. Modules marked STRICT have extra rules: you must state any change to public interfaces, security behaviour or data handling in your pull request description.

Last updated on