# Filing Cabinet React social platform shell met duidelijke scheiding tussen frontend en backend. ## Architectuur - `frontend/`: React (Vite) UI met pagina's, routes, knoppen en directe externe API-calls. - `backend/`: Bewust zonder eigen API-endpoints. ## Pagina's en functionaliteit - Landing (`/`) - Login (`/login`) - Register (`/register`) - Feed (`/feed`) - Discover (`/discover`) - Profile (`/profile`) Werkende acties: - Inloggen en registreren - Feed laden - Vriendverzoek versturen - Upload triggeren - Uitloggen ## Externe API-koppeling Frontend gebruikt alleen externe API-calls via: - `VITE_API_BASE_URL` De volgende endpoints worden vanuit de frontend aangeroepen: - `POST /auth/login` - `POST /auth/register` - `GET /auth/me` - `GET /feed` - `GET /discover` - `POST /friends/request` - `POST /uploads` Zie `frontend/.env.example`. ## Security en validatie in UI - Sessiegegevens staan in `sessionStorage` (niet meer in `localStorage`). - Upload heeft client-side limiet van 5 MB. - Login/register hebben client-side inputvalidatie (lengte/patterns). ## Starten ### 1) Frontend ```bash cd frontend cp .env.example .env npm install npm run dev ``` Frontend draait standaard op `http://localhost:5173`. ## Belangrijk Deze repository bevat geen lokale backend API. Auth, database, vrienden en uploads worden extern afgehandeld.