Development Guide
BazaarFi is a pnpm + Turborepo monorepo. All packages share strict TypeScript via tsconfig.base.json.
Quick commands
pnpm install # Install dependencies
pnpm dev # Web + indexer in watch mode
pnpm build # Production build
pnpm typecheck # Strict TS check
pnpm test:program # 17 Anchor security tests
pnpm db:generate # Generate SQL migration
pnpm db:migrate # Apply migrationsPackage map
programs/bazaarfi/— Anchor program (Rust)packages/sdk/— @bazaarfi/sdkpackages/shared/— types, Zod schemas, constantspackages/db/— Drizzle schema + queriesapps/web/— Next.js 15 marketplaceapps/indexer/— chain ingestion + WebSocketdocs/— full technical documentation
Adding features
New API route
Create apps/web/app/api/<path>/route.ts. Validate with Zod from @bazaarfi/shared. Query via @bazaarfi/db.
New database table
Edit packages/db/src/schema.ts, add queries, run pnpm db:generate && pnpm db:migrate.
New program instruction
Add Rust instruction → tests → update SDK IDL → indexer event handler.
Full guide: docs/development.md