Repositories
Eight repos, one product, one Jira project (DEF07). This page compares them; each has its own page for detail.
How this page was verified
Versions read on 2026-09-15 from each repo's manifest (package.json, deno.json, go.mod, Pulumi.yaml). Branch models read fresh with git ls-remote --heads origin. Re-verify the branch model before editing — it decides the git workflow.
Comparison
| Repo | Role | Stack | Key version | Branches on origin |
|---|---|---|---|---|
| backend | GraphQL + REST API, all logic | NestJS, Apollo, TypeORM, Postgres | NestJS 10, @nestjs/graphql 12 | main, staging, development |
| storefront | Customer shop | Next.js, React, Apollo, NextAuth | Next 15.5.9, React 19.1, Tailwind v4 | main, staging, development |
| admin | Admin / CMS | Next.js, React, Apollo, NextAuth | Next 15.5.9, React 19.0, Tailwind v3 | main, staging, development |
| webhook | Callback receiver → SNS | Express 5, plain JS | Express 5.1, Node ≥ 20 | main only |
| simulator | Proxy + error simulation for the 3 APIs | Express 5, http-proxy | Express 5.1, http-proxy 1.18 | main only |
| data-migration | One-off Sheets → Postgres import | Deno, TypeScript | Deno, postgres 0.17 | main only |
| stresstest | Browser-driven load test | Go, playwright-go | Go 1.24.5, playwright-go 0.52 | main only |
| pulumi | AWS infrastructure | Pulumi, TypeScript, @pulumi/aws(x) | — | main only |
Local checkouts are under /Volumes/xpro/erisristemena/<stack>/<repo> (e.g. nestjs/def-exsport-backend), not under www/.
Two shapes of repo
- Environment-branch repos — backend, storefront, admin. Three permanent branches; a work-item branch is cut from
origin/mainand merged into each target with its own PR. This is where almost all DEF07 work lands. - Single-branch repos — webhook, simulator, data-migration, stresstest, pulumi. One
main; commit straight on it, no PR. The webhook repo is still auto-deployed on push; the other four are tools or infra, run by hand.
Notes worth carrying
- Storefront uses Tailwind v4, admin uses Tailwind v3. Admin's
buildrunstscfirst (tsc --project tsconfig.build.json && next build); storefront's does not, and itstsconfighasstrict: false. - On both frontends
typescriptis a runtime dependency (next startloadsnext.config.ts). Do not move it todevDependencies. - READMEs on the three main repos are stock framework boilerplate — the role descriptions here come from the entry files, not the README.