// modules
55 MODULES.
language
layout
misc
- Backend baselinecore-backendEnv validation, pino logger, error envelope, request id, readiness and graceful shutdown
- Web pagesweb-pagesThe API client, auth pages and Todo page shared by the web frameworks
- Admin frontendapp-adminA second Next.js app in apps/admin (port 3002) sharing the API and packages/shared
- Shared API types and clientshared-apipackages/shared: the response envelope types and a typed fetch client (B17.4)
framework
- Expressframework-expressExpress HTTP server setup
- Fastifyframework-fastifyFastify 5 HTTP server with the backend baseline
- NestJSframework-nestNestJS application starter
- Next.jsframework-nextjsNext.js 16 (App Router) web app with a status page and a development proxy to the API
- React + Viteframework-react-viteReact 19 single-page app on Vite with React Router, a status page and an /api proxy
styling
architecture
- Feature-based (web)arch-web-featurefeatures/<name> per feature, plus shared components/, hooks/ and types/
- Layer-based (web)arch-web-layercomponents/, hooks/, services/, utils/, types/ and constants/ at the top level
- Atomic design (web)arch-web-atomiccomponents/{atoms,molecules,organisms,templates} plus hooks/
- Feature-scopedarch-featureFeature-scoped folders: src/features/<name> per domain, src/shared for the rest
- Clean architecturearch-cleanClean architecture source folder structure
- MVCarch-mvcMVC oriented source folder structure
- Flatarch-flatNo extra architecture folders; features go in src/modules/<name>
testing
database
- PostgreSQLdatabase-postgresPostgreSQL 18, with a compose service when Docker is selected
- MySQLdatabase-mysqlMySQL 8.4, with a compose service when Docker is selected
- SQLitedatabase-sqliteSQLite in a local file: no server to run
- MongoDBdatabase-mongodbMongoDB 8, with a compose service when Docker is selected
orm
cache
observability
auth
security
- Sessions in Redisauth-sessionOpaque session ids in Redis instead of JWT access tokens: logout and a reused refresh token end sessions at once
- Origin allowlist checkssecurity-origin-checksStrict origin allowlist checks for Express or NestJS requests
- Helmet security headerssecurity-helmetSecurity headers via Helmet middleware for Express or NestJS
- Rate limitingsecurity-rate-limitAPI rate limiting for Express or NestJS: fixed window, sliding window, token or leaky bucket
template
quality
middleware
- CORSmiddleware-corsCORS middleware for Express or NestJS APIs
- HTTP request logger (morgan)middleware-request-loggerHTTP request logging using Morgan
- Response compressionmiddleware-compressionResponse compression middleware
- asyncHandler wrappermiddleware-async-handlerasyncHandler() for route handlers. Optional: Express 5 already forwards rejected promises
api-style
api-docs
devops
- Docker and docker composedevops-dockerProduction Dockerfiles and a docker compose file for the whole stack
- Docker images for the web appsdevops-docker-webAn image per web app from the pruned workspace: the Next.js standalone server, or nginx for React + Vite
- GitHub Actions CIdevops-github-actionsA CI workflow that installs with your package manager and runs every gate
repo
- AGENTS.md + CLAUDE.mdrepo-agents-mdContext for AI coding assistants: stack, commands, layout, conventions
- VS Code setuprepo-vscodeFormat and ESLint fix on save, recommended extensions, a debug launch for the API
- GitHub hygiene filesrepo-github-hygieneDependabot, a pull request template, bug and feature issue templates, CODEOWNERS