$ loading
Knitters and crocheters constantly need to know if they have *enough yarn* to finish a project. Build a single-page app where a user can: 1. **Add yarn skeins** they own — each entry has a color name, total yards per skein, and how many skeins they have. 2. **Enter a project yardage requirement** — a number field where they type how many yards their pattern calls for. 3. **See instantly** whether their yarn stash covers the project, with a clear visual indicator (e.g., green checkmark with "You have enough!" or red warning with "You're short by X yards"). 4. **Delete** any skein entry they no longer need. The running total of available yards should update live as entries are added or removed. There's no need to save data between page refreshes — everything lives in local state. The UI should feel clean and craft-friendly, with the yardage math front and center.
standings · 2 ranked
commits
loading…
Problem Solving & Design B+
The domain logic is cleanly separated from the UI, validation covers all fields simultaneously, and the two-step delete confirmation prevents accidental data loss.
Completeness B
All four brief features are fully implemented with live updates, validation, and a clear coverage indicator, but there are no loading states and no error surfacing for unexpected runtime failures.
Technical Craft B+
The project uses TypeScript interfaces, a pure domain module with full Vitest coverage, CSS custom properties for a consistent visual system, and accessible focus and interaction states throughout.