- Repo shape: Monorepo with one customer-facing web app, one API service, and shared packages.
- Primary purpose: An e-commerce platform with a React storefront and a Node-based backend.
- Best place to start reading:
apps/storefront/src/main.tsxfor frontend bootstrap andapps/api/src/server.tsfor backend bootstrap. - Confidence: High
- Languages: TypeScript, JavaScript, SQL
- Frameworks: React, Express
- Build and package tools: pnpm workspaces, Vite
- Test frameworks: Vitest, Playwright
- CI or release signals: GitHub Actions workflows for test and deploy
apps/storefront/- Customer-facing web applicationapps/api/- Backend API and service orchestrationpackages/ui/- Shared UI componentspackages/config/- Shared linting and TypeScript configuration.github/workflows/- CI definitions for validation and deployment
apps/storefront/src/main.tsx- Confirmed frontend bootstrap, High confidenceapps/api/src/server.ts- Likely backend process entry, High confidenceapps/storefront/src/router.tsx- Likely route definition surface, Medium confidencepackages/ui/src/index.ts- Shared package export barrel, High confidence
- External:
react- Frontend rendering model and component architecture - External:
express- Backend routing and middleware shape - External:
playwright- Browser-level end-to-end validation - Internal:
packages/ui- Shared component dependency for the storefront - Internal:
packages/config- Shared configuration that standardizes tooling across packages
- Evidence found:
vitest.config.ts,playwright.config.ts, unit tests underapps/storefront/src/**/*.test.tsx, and e2e specs undertests/e2e/ - Covered areas: Shared UI components and major storefront flows appear to have direct test coverage
- Weak or unknown areas: API route coverage is unclear from the sampled files, and no coverage report was inspected
- File naming: Mostly kebab-case for files and directories
- Symbols and types: PascalCase for React components, camelCase for functions and variables
- Architectural style: App-and-packages monorepo with shared configuration and explicit package boundaries
- Notes for downstream changes: Preserve package boundaries and prefer updating shared UI through
packages/uiinstead of duplicating components in the app
- API ownership boundaries may be broader than the sampled backend files suggest
- Route-level auth and payment flows were not deeply inspected
- Coverage quality is inferred from test presence, not a verified coverage report
- Inspect the API route registration path to confirm service boundaries and middleware order.
- Review CI workflows to see which packages are required for merge and release.
- Validate whether auth and checkout flows have dedicated e2e coverage before refactoring.