Essential session storage is required to sign in. Optional analytics remain off unless you allow them.
Build a complete small app (e.g. notes, tasks, or a bookmark manager) with all three tiers you wire together yourself: a component-framework frontend, a backend HTTP server exposing a REST API, and a database. The frontend fetches from the API and handles loading/error/empty states; the backend validates input server-side and persists to the DB. Keep a clean separation (frontend ↔ API ↔ data) and run both halves locally. The point is the WIRING — data flowing through every tier and back.
Frontend ↔ REST API ↔ database all connected; a user action flows through every tier and updates the UI.
Sensible REST endpoints + status codes; data persisted via a DB/ORM; server re-validates input (not just the client).
Fetches from the API with loading/error/empty states handled; UI stays in sync after mutations.
Clear separation of concerns; runs locally with documented setup; env config not hardcoded.
Use this README structure to make the work reviewable.
DevPath fetches a read-only, size-capped snapshot. Submitted code is never executed.
# A full-stack CRUD app, end to end ## Goal Build a complete small app (e.g. notes, tasks, or a bookmark manager) with all three tiers you wire together yourself: a component-framework frontend, a backend HTTP server exposing a REST API, and a database. The frontend fetches from the API and handles loading/error/empty states; the backend validates input server-side and persists to the DB. Keep a clean separation (frontend ↔ API ↔ data) and run both halves locally. The point is the WIRING — data flowing through every tier and back. ## Acceptance criteria - [ ] End-to-end wiring: Frontend ↔ REST API ↔ database all connected; a user action flows through every tier and updates the UI. - [ ] API & data layer: Sensible REST endpoints + status codes; data persisted via a DB/ORM; server re-validates input (not just the client). - [ ] Frontend integration: Fetches from the API with loading/error/empty states handled; UI stays in sync after mutations. - [ ] Structure: Clear separation of concerns; runs locally with documented setup; env config not hardcoded. ## Verification - [ ] Document installation and run commands. - [ ] Record automated checks and their exact commands. - [ ] Add representative output, screenshots, or a short demo where useful. - [ ] Confirm failure paths and known constraints. ## Decision log ### Decision title - Context: - Choice: - Alternatives considered: - Tradeoffs: ## Evidence - Link each rubric criterion to the file, test, or artifact that demonstrates it. ## Known limitations - List what is intentionally out of scope and what should be improved next.