Webv2 frontend
This is the main frontend of the Tadoku website. It contains all logging & contest functionality.
Architecture
- A Next.js app written using TypeScript
- Data is fetched through React Query and response is validated with Zod
- Consumes the following APIs:
- immersion-api: the main api for logging and contest functionality (specs:
services/immersion-api/http/rest/openapi/api.yaml) - content-api: the api for fetching blog posts & pages (specs:
services/contest-api/http/rest/openapi/api.yaml)
- immersion-api: the main api for logging and contest functionality (specs:
- The app uses Tailwind CSS for styling
- Uses the Tadoku component library "ui" from within the workspace
- Refer to
frontend/apps/styleguidefor a reference on how to use this component library
- Refer to
- All forms are written with react-hook-form
- Dates are manipulated using Luxon