953 B
953 B
Technical Stack
1. General Approach
- Monorepo
- Single codebase for frontend and backend
- SPA (no SEO requirements)
- Mobile-first
- Backend used as API and calculation layer
2. Frontend
- Nuxt 3
- Vue 3
- TypeScript
- Pinia (state management)
- Vite (build tool)
- CSS or Tailwind CSS (implementation choice)
3. Backend
- Node.js via Nuxt Nitro
- REST API (no GraphQL)
- Server-side calculation for:
- crop growth
- quest availability
- streaks
- rewards
4. Database
- SQLite
- Prisma ORM
- Migrations required
- Seed data required (initial crops, obstacles, presets)
5. State Management
- Pinia as a single source of truth on frontend
- Server is authoritative for:
- time-based logic
- rewards
- progression
6. Internationalization
- i18n support enabled from start
- Default language: RU
- EN prepared for future use
7. Testing
- Unit tests are NOT required for MVP