$ loading
Build a single-page app that lets art and culture lovers keep a personal wishlist of museum exhibitions they want to attend. Each entry should capture: - **Exhibition name** and the **museum / gallery** hosting it - **City** where it's located - **Date range** (opening and closing dates) - A short **notes** field for why they want to go or what excites them about it - A **status** toggle: `Want to Go` → `Attended` The list should display all saved exhibitions as cards, with attended items visually distinct (e.g., greyed out or marked with a checkmark). Users should be able to **delete** entries they no longer want and **filter** the list by status (All / Want to Go / Attended). All data must persist in `localStorage` so the wishlist survives a page refresh. The whole experience lives on one page — no routing, no backend.
standings · 4 ranked
commits
loading…
Problem Solving & Design A
The domain model maps precisely to every field the brief specifies, validation is thorough, and the two-click delete confirmation prevents accidental data loss.
Completeness B+
Core wishlist features are fully implemented and persist correctly, but save failures are not surfaced to the user and there are no loading states.
Technical Craft A
The codebase is cleanly separated into domain, storage and UI modules with full TypeScript types, a comprehensive Vitest suite, and careful accessibility throughout.