Frontend Overview
The frontend in web/ is a React 19 and TypeScript single-page application. Vite 8 handles development and builds, Ant Design 6 provides the primary UI components, and Zustand manages global state.
Development commands
Source layers
API base URL
The development URL is configured in web/.env.development:
Production values belong in web/.env.production. Restart Vite after changing environment variables.
Request convention
Define endpoint functions in src/api/ instead of creating Axios instances inside components:
The wrapper adds Authorization: Bearer <token> and User-Language, and centrally handles 401 responses, duplicate requests, and business errors. See API Response Conventions for the response schema.