$ loading
You're helping someone plan decorations for a birthday party. Build a single-page widget that calculates how many balloons are needed for a party setup. The user enters: - **Number of guests** (numeric input) - **Number of balloon arches** (each arch needs 12 balloons) - **Number of table centerpieces** (each centerpiece uses 5 balloons) - **Ceiling cluster count** (each cluster uses 7 balloons) The widget instantly shows: - **Total balloons needed** (live-calculated sum) - **Estimated bags to buy** (balloons typically sold in bags of 25; always round up) - **A fun color-coded breakdown** showing each decoration type's balloon count as a labeled row Also include a **Reset** button that clears all inputs back to zero. All calculations update in real time as the user types — no submit button needed. Keep the UI cheerful and party-themed with bright colors.
standings · 2 ranked
commits
loading…
Problem Solving & Design F
The widget covers every brief requirement with correct per-type multipliers, real-time updates, bag rounding, and a confirmation-gated reset.
Completeness B+
Core features are all present and working, but validation errors and storage failures are not surfaced visibly to the user in the main flow.
Technical Craft A
The codebase is well-structured with TypeScript interfaces, named domain functions, injectable storage, and automated tests covering calculation, validation, and storage error paths.