Full-stack application
Project type
Growing
Maturity
380
Files
45200
Estimated lines
Languages
Project understanding
Purpose
A full-stack web platform for managing customer accounts, processing payments and serving a React-based dashboard. Built with TypeScript, Express and React with a PostgreSQL database.
Architecture
Monolithic Express backend serving a React SPA. API handlers in src/api/handlers/, business logic in src/services/, database access in src/models/. The frontend is a Create React App project under src/components/ with Redux for state management.
Entry points
- src/index.ts — Express server bootstrap, registers middleware and routes
- src/components/App.tsx — React root component, sets up routing and global providers
Key routes
- /api/users User CRUD (GET, POST, PUT, DELETE)
- /api/orders Order management with payment processing
- /api/auth/login JWT-based authentication
- /api/auth/register User registration with email verification
- /api/billing Stripe integration for subscription management
- /dashboard Main user dashboard (React SPA)
- /settings User and org settings
Data flow
Core dependencies
Express 4.x for HTTP, jsonwebtoken for auth, Stripe SDK for payments, axios for HTTP client, moment for dates, lodash for utilities, pg for PostgreSQL. Dev: TypeScript, Jest, ESLint, Prettier.
Dev workflow
Setup
npm install && cp .env.example .env && npm run db:migrate
Dev server
npm run dev (concurrent Express + React)Build
npm run build (TypeScript compile + React build)Test
npm test (Jest, limited coverage)Deploy
Docker build → push to ECR → ECS deploy
Largest files