A monorepo for a car repair shop. Contains the store website and an internal management web app.
https://autoprimajaya.com
- TypeScript 85.1%
- HTML 6.6%
- CSS 5%
- JavaScript 2.1%
- Shell 1%
- Other 0.1%
|
All checks were successful
Build and Publish Container / test garage-store (push) Successful in 1m19s
Build and Publish Container / typecheck apps/management (push) Successful in 1m36s
Build and Publish Container / typecheck apps/store (push) Successful in 1m22s
Build and Publish Container / checks (push) Successful in 0s
Checks / test @garage/catalog (push) Successful in 1m12s
Checks / test garage (push) Successful in 1m31s
Checks / typecheck apps/management (push) Successful in 1m41s
Checks / lint (biome) (push) Successful in 12s
Checks / typecheck apps/store (push) Successful in 1m19s
Build and Publish Container / test @garage/catalog (push) Successful in 1m15s
Build and Publish Container / test garage (push) Successful in 1m29s
Build and Publish Container / lint (biome) (push) Successful in 11s
Checks / test garage-store (push) Successful in 1m16s
Build and Publish Container / build-push (push) Successful in 4m41s
Removes category and invoice_terms from schema, actions, and UI |
||
|---|---|---|
| .forgejo | ||
| .omp | ||
| apps | ||
| docs | ||
| packages/catalog | ||
| .dockerignore | ||
| .gitignore | ||
| biome.json | ||
| devenv.lock | ||
| devenv.nix | ||
| package.json | ||
| pnpm-lock.yaml | ||
| pnpm-workspace.yaml | ||
| README.md | ||
| secretspec.toml | ||
| turbo.json | ||
Garage monorepo
pnpm + Turborepo workspace hosting both garage applications.
Layout
apps/management # Next.js CRM / management dashboard (garage)
apps/store # Next.js static storefront (garage-store)
packages/ # shared packages (e.g. @garage/catalog, added later)
Prerequisites
Commands
Run from the repository root:
pnpm install # install all workspaces (frozen lockfile in CI)
pnpm dev # turbo run dev (all apps)
pnpm build # turbo run build
pnpm lint # turbo run lint (Biome)
pnpm test # turbo run test
pnpm format # biome format --write
Target a single app with pnpm filters:
pnpm --filter garage dev # management on :3000
pnpm --filter garage-store dev # storefront
App-specific setup, environment variables, and scripts live in each app's
README.md and .env.example.