# Tech Context: OCD Website ## Technologies Used ### Frontend - React 19 - TypeScript 5.7 - Next.js 14.1 - Tailwind CSS 3.4 - Framer Motion 11 - React Router DOM 7 - React Icons 5.4 - React Simple Maps 4.0 (beta) - React Intersection Observer 9.13 ### Backend - Node.js with Express 4.21 - TypeScript - MongoDB for document storage - Redis for caching and session management - Nodemailer 6.9 for email handling - CORS for cross-origin resource sharing - dotenv 16.4 for environment variable management ### Development & Build Tools - Docker & Docker Compose - Portainer for container management - PostCSS 8.4 - Autoprefixer 10.4 - pnpm 9.14 (package manager) - Vite 6.0 - ESLint 9 - Concurrently for running multiple processes - tsx/ts-node for TypeScript execution - Hot module replacement (HMR) ### Production - Nginx (Production server for frontend) - Node.js server for backend API - SSL for secure connections ## Development Setup - Multi-container Docker setup with Docker Compose - Hot-reloading enabled - Separate development and production builds - Environment variable management for sensitive data - TypeScript configuration for both client and server - Concurrent development server (frontend + backend) ## Technical Constraints - Emphasis on accessibility for deaf and DeafBlind users - WCAG 2.1 AA compliance required - ASL video support with WebVTT subtitles - Screen reader compatibility - High performance requirements for video content - Secure admin access restrictions - Responsive design for all screen sizes - Support for membership expiration notifications