# Logboek Bijgehouden tijdens de bouw. Per blok: wat ik deed, waarom, wat ik heb laten vallen. ## Opzet (avond dag 1) Wat ik deed: - Afspraken vastgelegd in AGENTS.md (architectuur, naamgeving, wanneer commentaar, wat de linters afdwingen). - Backend-skelet: Python 3.13 + FastAPI via uv, mappenstructuur volgens ports-and-adapters (domain / ports / adapters / pipeline / api), config met alleen de app-mode (demo of live), health-endpoint met een smoke test. - Frontend-skelet: Vue 3 + TypeScript via Vite, met eslint, prettier en vue-tsc. - docker-compose die 1 image bouwt: frontend-build en API samen op dezelfde poort. De poort ligt vast omdat de geregistreerde Spotify redirect-URI moet kloppen. - CI op elke push: ruff, mypy, pytest voor de backend; typecheck, lint en build voor de frontend. Groen vanaf de eerste commit. - Repo op eigen Forgejo met een mirror naar GitHub. Waarom: - Structuur eerst, dan blijft elke volgende stap klein en controleerbaar. - `docker compose up` is het opleverbare, dus dat werkt vanaf het begin van development. - Alles Engels behalve dit logboek; ik volg de taal van de opdracht. Wat ik heb laten vallen of uitgesteld: - Domainmodellen, protocollen, prompts, pipeline-instellingen en het frontend-typecontract bewust nog niet neergezet. Die ontstaan in de stap waar ze horen. Ik probeer op die manier bewust vroeg drift en dode code te voorkomen. - Geen apart beslisdocument. De motivering staat in de README en hier.