feat: update docs

This commit is contained in:
tiennm99 committed 2025-08-16 16:47:46 +07:00
1 parent e64a66d64d
commit 2b5359e3cb
5 files changed
+75 -59

No files matched your search

+22 -15
View File
@@ -2,39 +2,46 @@
## Frontend Framework
- **Next.js 15.4.6**: React-based full-stack framework with App Router
- **React 19**: Latest React version for component architecture
- **React 19.1.0**: Latest React version for component architecture
- **Tailwind CSS 4**: Utility-first CSS framework for styling
## Street View & Mapping
- **Mapillary API**: Panoramic street-level imagery provider
- **PhotoSphere Viewer**: 360° panorama viewer with zoom and fullscreen
- **Leaflet**: Interactive mapping library
- **Mapillary API**: Panoramic street-level imagery provider (thumbnail URLs)
- **Leaflet**: Interactive mapping library for guess placement
- **OpenStreetMap**: Map tile provider for base maps
- **@photo-sphere-viewer/core**: 360° panorama viewer (planned integration)
## Geographic Processing
- **Nominatim API**: OpenStreetMap geocoding service for city boundaries
- **Turf.js**: Spatial operations library for point-in-polygon detection and distance calculations
- **Geospatial Logic**: Server-side coordinate validation and boundary checking
- **@turf/turf**: Spatial operations library for distance calculations and point processing
- **Bbox-based Location**: Pre-defined city bounding boxes for location generation
- **Server-side Calculations**: All geographic processing on backend
## Data Storage & Session Management
- **Redis**: Persistent leaderboard storage with automatic trimming
- **In-Memory Map**: Server-side session storage with 30-minute expiry
- **Session Isolation**: Secure target coordinate storage per game session
- **Redis**: Complete session and leaderboard storage
- **Redis Sorted Sets**: Leaderboard ranking with automatic trimming
- **UUID v4**: Session identifier generation
- **30-minute Session Expiry**: Automatic Redis-based cleanup
## UI Components & Styling
- **shadcn/ui**: Component library with "new-york" style
- **shadcn/ui**: Complete component library with "new-york" style
- **Radix UI**: Headless component primitives
- **Lucide React**: Icon library
- **class-variance-authority**: Component variant management
- **tailwind-merge + clsx**: Dynamic class name handling
- **CSS Variables**: Theme-based styling system
## Form Handling & Validation
- **react-hook-form**: Form state management
- **@hookform/resolvers**: Form validation resolvers
- **zod**: Schema validation
## Development & Analytics
- **ESLint**: Code linting with Next.js configuration
- **Turbopack**: Development server bundler
- **Vercel Analytics**: User analytics tracking
- **Vercel Speed Insights**: Performance monitoring
- **@vercel/analytics**: User analytics tracking
- **@vercel/speed-insights**: Performance monitoring
## Key Dependencies
- **UUID**: Unique session identifier generation
- **uuid**: v11.1.0 for unique session identifier generation
- **redis**: v5.8.0 for data persistence
- **JavaScript Only**: No TypeScript - pure JavaScript implementation
- **Individual Parameters**: Functions use separate parameters instead of object destructuring