Installation
Add ContractSpec to your existing Next.js or Bun project, or start fresh.
Prerequisites
- • Node.js 20+ (or Bun 1.0+)
- • Existing Next.js app or Bun HTTP server
- • PostgreSQL database (for persistence)
Install Core Libraries
Add the contracts runtime and your choice of adapter:
# Core libraries npm install @lssm/lib.contracts @lssm/lib.schema # For Next.js projects npm install @lssm/lib.contracts # For database models npm install @lssm/app.cli-database prisma @prisma/client
Set up your project structure
Create directories for your specs and implementations:
mkdir -p lib/specs mkdir -p lib/registry mkdir -p app/api/ops
Initialize the database
If using Prisma, set up your schema and generate the client:
npx prisma init # Edit prisma/schema.prisma with your models npx prisma generate npx prisma migrate dev --name init
Why No Global CLI?
ContractSpec specs are pure TypeScript modules served by runtime adapters. There's no code generation step or deployment CLI—just import your specs and pass them to makeNextAppHandler ormakeElysiaHandler. Database migrations use standard Prisma CLI commands.