# Technology Stack **Analysis Date:** 2026-03-13 ## Languages **Primary:** - TypeScript 5.2.2 - Both backend (`backend/`) and frontend (`frontend/`) - JavaScript (via transpilation) - Runtime execution **Secondary:** - HTML/CSS - Static promo site (`promo-site/`) ## Runtime **Environment:** - Node.js (runtime for backend) - Browser (runtime for frontend) **Package Manager:** - npm (lockfiles: `package-lock.json` in both `backend/` and `frontend/`) - Lockfile: Present ## Frameworks **Core:** - Express 4.18.2 - Backend API server (`backend/package.json`) - React 18.2.0 - Frontend UI library (`frontend/package.json`) **Testing:** - Jest 29.6.2 - Unit testing for backend (`backend/package.json`) - ts-jest - TypeScript support for Jest **Build/Dev:** - Vite 4.4.9 - Frontend build tool and dev server (`frontend/package.json`) - TypeScript 5.2.2 - Type checking and compilation for both layers - ts-node-dev - Development server for backend (`backend/package.json`) ## Key Dependencies **Critical (Backend):** - `express` 4.18.2 - HTTP server framework - `mongoose` 7.5.0 - MongoDB ODM (configured, partially implemented) - `jsonwebtoken` 9.0.2 - Authentication tokens - `bcryptjs` 2.4.3 - Password hashing - `zod` 3.22.2 - Schema validation (available, not fully utilized) - `socket.io` 4.7.2 - Real-time communication (installed, usage unclear) **Critical (Frontend):** - `react` 18.2.0 - UI library - `react-router-dom` 6.15.0 - Client-side routing - `tailwindcss` 3.3.3 - Utility-first CSS framework - `next-themes` 0.2.1 - Dark mode handling - `lucide-react` 0.263.1 - Icon library - `vite` 4.4.9 - Build tool **Infrastructure:** - `cors` 2.8.5 - Backend CORS handling - `helmet` 7.0.0 - Security headers - `multer` 1.4.5-lts.1 - File upload handling ## Configuration **Environment:** - **Backend:** `.env` file in root (not shown in structure, referenced in code) - Configured in `backend/src/config.ts` - Key configs: `PORT`, `NODE_ENV`, `CORS_ORIGIN`, `MONGODB_URI`, `JWT_SECRET`, `UPLOADS_DIR` - **Frontend:** `.env` file in `frontend/` (not read due to security rules, likely Vite env vars) **Build:** - **Backend:** `backend/tsconfig.json` - TypeScript configuration - **Frontend:** - `frontend/vite.config.ts` - Vite build configuration with path aliases - `frontend/tailwind.config.ts` - TailwindCSS theme configuration - `frontend/postcss.config.js` - PostCSS processing ## Platform Requirements **Development:** - Node.js environment (backend) - Modern browser with ES6+ support (frontend) **Production:** - Node.js server for backend API - Static file hosting for frontend (Vite build output) - Static file hosting for promo site --- *Stack analysis: 2026-03-13*