Technology Stack
This document provides a comprehensive overview of all technologies used in the Ever Works.
Frontend Technologies
Core Framework
-
Next.js 15 - React framework with App Router
- Server-side rendering (SSR)
- Static site generation (SSG)
- Incremental static regeneration (ISR)
- API routes
- Built-in optimization
-
React 19 - UI library
- Latest features and improvements
- Concurrent rendering
- Automatic batching
- Suspense for data fetching
Language & Type Safety
- TypeScript 5 - Static type checking
- Strict mode enabled
- Path mapping configured
- Custom type definitions
Styling & UI
-
Tailwind CSS 3.4 - Utility-first CSS framework
- Custom design system
- Dark mode support
- Responsive design utilities
- JIT compilation
-
HeroUI React 2.6 - Modern React components
- Accessible components
- Customizable themes
- TypeScript support
- Tree-shakeable
State Management
-
Zustand 5 - Lightweight state management
- Simple API
- TypeScript support
- Minimal boilerplate
- DevTools integration
-
TanStack React Query 5 - Server state management
- Caching and synchronization
- Background updates
- Optimistic updates
- Error handling
Form Handling
-
React Hook Form 7 - Performant forms
- Minimal re-renders
- Built-in validation
- TypeScript support
- Easy integration
-
Zod 4 - Schema validation
- TypeScript-first
- Runtime validation
- Type inference
- Error handling
Backend Technologies
Database & ORM
-
PostgreSQL - Relational database
- ACID compliance
- Advanced features
- Excellent performance
- JSON support
-
Drizzle ORM 0.40 - TypeScript ORM
- Type-safe queries
- Minimal overhead
- SQL-like syntax
- Migration system
-
Supabase - Backend-as-a-Service (optional)
- Hosted PostgreSQL
- Real-time subscriptions
- Row-level security
- Built-in auth
Authentication
-
NextAuth.js 5.0 - Authentication library
- Multiple providers
- JWT and database sessions
- TypeScript support
- Security best practices
-
Supabase Auth - Alternative auth solution
- Built-in user management
- Social providers
- Email verification
- Password reset
Payment Processing
-
Stripe 18 - Payment processor
- Subscription management
- Webhook handling
- International support
- Strong security
-
LemonSqueezy 4 - Alternative payment processor
- Simple integration
- Global payments
- Tax handling
- Merchant of record
Content Management
Git-based CMS
-
isomorphic-git - Git operations in JavaScript
- Clone repositories
- Pull changes
- Commit files
- Branch management
-
js-yaml - YAML parser
- Parse YAML files
- Generate YAML
- Schema validation
- Error handling
File Processing
- gray-matter - Frontmatter parser
- Parse markdown files
- Extract metadata
- Support multiple formats
Internationalization
- next-intl 3.26 - i18n for Next.js
- App Router support
- Type-safe translations
- Pluralization
- Date/number formatting
Supported Languages
- English (en)
- French (fr)
- Spanish (es)
- Chinese (zh)
- German (de)
- Arabic (ar) - with RTL support
Analytics & Monitoring
Analytics
- PostHog - Product analytics
- Event tracking
- User identification
- Feature flags
- Session recording
Error Tracking
- Sentry 9.38 - Error monitoring
- Error tracking
- Performance monitoring
- Release tracking
- User feedback
Performance
- Vercel Analytics - Web vitals
- Core Web Vitals
- Real user monitoring
- Performance insights
Email Services
-
Resend 4 - Email API
- Transactional emails
- Template support
- Delivery tracking
- Developer-friendly
-
Novu 2.6 - Notification infrastructure
- Multi-channel notifications
- Template management
- Workflow automation
- Analytics
Security
Authentication Security
-
bcryptjs 3 - Password hashing
- Secure password storage
- Salt generation
- Timing attack protection
-
jose 6 - JWT operations
- Token generation
- Token verification
- Encryption support
Input Validation
- React Google reCAPTCHA 3 - Bot protection
- Form protection
- Invisible reCAPTCHA
- Score-based verification
Development Tools
Code Quality
-
ESLint 9 - JavaScript linter
- Code quality rules
- Custom configurations
- TypeScript support
- Next.js rules
-
Prettier 3.5 - Code formatter
- Consistent formatting
- Editor integration
- Custom rules
Build Tools
-
PostCSS 8 - CSS processor
- Tailwind CSS processing
- Autoprefixer
- CSS optimization
-
Webpack 5 - Module bundler (via Next.js)
- Code splitting
- Tree shaking
- Asset optimization
Deployment & Infrastructure
Hosting Platforms
-
Vercel - Recommended platform
- Next.js optimization
- Edge functions
- Global CDN
- Automatic deployments
-
Netlify - Alternative platform
- Static site hosting
- Serverless functions
- Form handling
Database Hosting
-
Supabase - Managed PostgreSQL
- Automatic backups
- Connection pooling
- Real-time features
-
PlanetScale - Serverless MySQL
- Branching workflow
- Automatic scaling
- Schema management
-
Neon - Serverless PostgreSQL
- Instant branching
- Autoscaling
- Point-in-time recovery
Package Management
-
pnpm - Fast, disk space efficient package manager
- Faster installations
- Shared dependencies
- Strict dependency resolution
-
npm - Default Node.js package manager
- Widely supported
- Large ecosystem
- Security auditing
Version Requirements
Node.js
- Minimum: Node.js 20.19.0
- Recommended: Latest LTS version
- Package Manager: npm 10+, yarn 1.13+, or pnpm 8+
Browser Support
- Modern browsers: Chrome 90+, Firefox 88+, Safari 14+, Edge 90+
- Mobile: iOS Safari 14+, Chrome Mobile 90+
- No IE support: Modern features only
Performance Considerations
Bundle Size
- Core bundle: ~200KB gzipped
- Code splitting: Route-based and component-based
- Tree shaking: Unused code elimination
- Dynamic imports: Lazy loading for non-critical components
Runtime Performance
- React 19: Concurrent features for better UX
- Next.js 15: Optimized rendering and caching
- Image optimization: WebP/AVIF support with lazy loading
- Font optimization: Self-hosted fonts with preloading
Database Performance
- Connection pooling: Efficient database connections
- Query optimization: Indexed queries and efficient joins
- Caching: Application-level and database-level caching
Security Stack
Application Security
- HTTPS: Enforced in production
- CSRF protection: Built into NextAuth.js
- XSS protection: Content sanitization
- SQL injection: Parameterized queries via Drizzle
Infrastructure Security
- Environment variables: Secure secret management
- Rate limiting: API endpoint protection
- Input validation: Zod schema validation
- File upload security: Type and size restrictions
Monitoring Stack
Application Monitoring
- Error tracking: Sentry for error monitoring
- Performance: Core Web Vitals tracking
- Analytics: PostHog for user behavior
- Uptime: External monitoring services
Infrastructure Monitoring
- Database: Connection and query monitoring
- API: Response time and error rate tracking
- CDN: Cache hit rates and performance
- Deployment: Build and deployment monitoring
Future Considerations
Planned Upgrades
- React 19: Stable release adoption
- Next.js 16: When available
- TypeScript 5.x: Latest features
- Node.js 22: LTS upgrade
Potential Additions
- GraphQL: For complex data requirements
- WebSockets: Real-time features
- PWA: Progressive web app features
- Edge computing: Enhanced performance