Loading...
FastStaq is a pnpm monorepo with three workspaces. Knowing where things live makes it much faster to find and change code.
.
├── client/ # Next.js front-end (App Router, React, Tailwind, shadcn/ui)
├── server/ # Express API, Prisma, BullMQ workers, services
├── shared/ # Code shared between client and server (types, helpers)
├── scripts/ # Repo tooling (setup, rename, legal generation, audits)
└── package.json # Workspace root scripts (pnpm dev, build, test, ...)
client/app/ uses the Next.js App Router, grouped by area: (public), (dashboard), (admin), (auth), (support).components/ holds UI and feature components, including ui/ shadcn primitives.lib/ has the API client, utilities, and configuration.hooks/ and store/ hold React Query hooks and Zustand stores.server/src/routes/ maps HTTP routes to controllers.src/controllers/ parse requests and call services.src/services/ contain the business logic (auth, stripe, support, blog, affiliate, and more).src/workers/ are the BullMQ background workers.src/middleware/ holds auth, security, and audit middleware.prisma/schema.prisma is the database schema; prisma/migrations/ holds migrations.shared/Cross-cutting types and helpers used by both apps, so the client and server never drift apart.
Run these from the repository root:
pnpm dev starts everything for local development.pnpm build builds all workspaces.pnpm test runs the server test suite.pnpm lint and pnpm type-check check code quality across workspaces.Continue to First run and create an admin, then explore the Core Modules category.
Open a support ticket if you cannot find what you are looking for.
Sign in to leave feedback on this article.