app/client/
├── components/         # Shared UI components (Buttons, Inputs, Layouts)
│   └── Layout.tsx      # A common layout wrapper (optional but good practice)
├── context/            # Global state providers
│   └── AuthContext.tsx # Manages Token, User, and Login/Logout logic
├── hooks/              # Custom React hooks
│   └── useApi.ts       # Hook to access the API client
├── pages/              # Components representing full URL routes
│   ├── Home.tsx        # The main dashboard (Login + Profile actions)
│   └── UserPage.tsx    # The new /:username demo page
├── services/           # Plain JS/TS logic (non-React)
│   └── apiClient.ts    # The fetch wrapper configuration
├── App.tsx             # Route definitions (The Router)
└── index.tsx           # Entry point