Development
Run the full GhostAPI workspace locally.
GhostAPI is a pnpm/Turborepo workspace with a public Next.js site, protected app, Hono server, Prisma database layer, Redis, shared packages, and UI components.
Setup
Start from a clean checkout
These commands assume Docker is available for PostgreSQL and Redis.
Local setup
pnpm install
docker compose up -d
pnpm --filter @ghostapi/server prisma:generate
pnpm --filter @ghostapi/server prisma:migrate
pnpm devPorts
Services
Each app owns a distinct local port so public, protected, and API work can run together.
- Public web
- Next.js marketing and documentation site on port 3000.
- Protected app
- React/Vite authenticated workspace on port 3002.
- Server
- Hono API, auth, project APIs, docs, and mock runtime on port 3001.
- Storybook
- Shared UI package documentation and component checks on port 6006.
Verification
Checks before shipping
Use the smallest targeted check first, then run broader checks when the change touches shared behavior.
- Format
- pnpm format:check
- Lint
- pnpm lint
- Types
- pnpm typecheck
- Tests
- pnpm test
- Build
- pnpm build