Skip to Content
TechnicalArchitecture

Architecture

This page documents the stack, data flow, and folder structure of fe-serenity-code-landing-page.

Stack

LayerTechnology
FrameworkNext.js 16 (App Router)
LanguageTypeScript (strict)
Package ManagerBun
StylingTailwind CSS v4
Global StateZustand
Server StateTanStack Query
API ClientOrval (generated from OpenAPI) + native fetch mutator
i18nnext-intl (EN/ID)
FormsReact Hook Form + Zod
EmailResend + React Email

Data Flow

FE never accesses Payload CMS directly. All data flows through BE Landing Page.

Folder Structure

src/ ├── app/ # Next.js App Router pages & layouts ├── components/ # UI components (kebab-case files) ├── hooks/ # Custom hooks (camelCase files) ├── lib/ │ ├── api/ # Orval-generated client (read-only) │ ├── constants/ │ └── utils/ ├── types/ # Shared TypeScript types └── store/ # Zustand stores (global UI state only)