matomo-web-statistics/DeafGain_Tech_Stack

76 lines
No EOL
2 KiB
Text

## Tech Stack
### Frontend
- React 19
- TypeScript 5.7
- React Router DOM 7
- Tailwind CSS 3.4
- Framer Motion 11
- React Icons 5.4
- React Simple Maps 4.0 (beta)
- React Intersection Observer 9.13
- Next.js 14.1
### Backend
- Node.js with Express 4.21
- TypeScript
- Nodemailer 6.9 for email handling
- CORS for cross-origin resource sharing
- dotenv 16.4 for environment variable management
- Upstash Redis 1.28 for caching/rate limiting
### Development & Build Tools
- Docker & Docker Compose
- 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
### Architecture
- Frontend running on port 3000 (development)
- Backend API running on port 4000
- Containerized development and production environments
- REST API for contact form handling
- Gmail SMTP for email delivery
- Rate limiting implementation
- Context-based state management
- Redis-backed caching layer
### Key Features
- Responsive design
- Animated UI components with Framer Motion
- Interactive USA region map
- Contact form with email notifications
- Timeline visualization
- Service showcase
- Biography section
- Testimonials section
- Video playback with WebVTT subtitles
- Transcription support
- Toast notification system
- Snow peaks animation effect
- Custom video player component
### Development Environment
- Multi-container 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)
### Production Environment
- Nginx serving static frontend files
- Node.js backend API
- Containerized deployment
- Secure email handling with Google App credentials
- Multi-stage Docker builds
- Production-optimized builds with tree-shaking