Skip to main content
Localizia

Installation

Requirements

  • Node.js 22+ and pnpm (the repo pins a pnpm version via corepack).
  • A PostgreSQL database (local Docker, Postgres.app, or a hosted instance).

Install and run

Install dependencies and start the dev server:

pnpm install
pnpm dev

The app runs at http://localhost:3000 and redirects to your default locale (e.g. /en).

Environment

The app validates its environment at boot with Zod (src/env.ts), so it fails fast with a clear message if something required is missing or malformed. Copy the example file and fill in the values:

cp .env.example .env.local

At minimum you need a database URL and an auth secret:

DATABASE_URL=postgresql://user:pass@localhost:5432/app
BETTER_AUTH_SECRET=<a real 32+ character random string>
BETTER_AUTH_URL=http://localhost:3000
APP_URL=http://localhost:3000
APP_NAME="Your App"

Every variable in .env.example is documented with a comment. Optional features (Stripe, Resend, S3, social login) stay off until you provide their keys — see Configuration.

Database setup

Generate the Prisma client, apply migrations, and seed sample data:

pnpm db:generate        # generate the typed Prisma client
pnpm db:migrate         # apply migrations (dev)
pnpm db:seed            # optional: seed sample data

Useful extras:

pnpm db:studio          # browse the database in Prisma Studio
pnpm db:reset           # drop, re-migrate, and re-seed (destructive)

Verifying your setup

The kit ships with tests. Run them to confirm everything is wired up:

pnpm test:run           # unit + integration tests (Vitest)
pnpm lint               # ESLint
pnpm build              # production build

See Testing for the full testing story.