$ loading
You're organizing a group gift for a friend's birthday. The problem: everyone wants to chip in, but nobody agrees on how much to spend or who's already paid. Build a single-page **group gift budget tracker** where a user can: 1. Set a **total gift budget** (e.g. $120). 2. **Add contributors** by name and the amount they've promised to chip in. 3. See a live **running total** of money collected vs. the budget goal, displayed as a progress bar. 4. Mark individual contributors as **Paid** or **Pending** with a toggle button — paid amounts count toward the collected total, pending amounts do not. 5. **Delete** a contributor from the list. The UI should clearly show: total budget, amount collected so far (from paid contributors only), amount still needed, and the full contributor list with each person's name, amount, and paid/pending status. No backend, no auth — all state lives in the page.
standings · 2 ranked
commits
loading…
Problem Solving & Design B
Design values such as colors and spacing are defined as literal values inline in the CSS rather than through CSS custom properties or a shared token system.
Completeness B
Core features including adding contributors, toggling payment status, deleting contributors, tracking collected vs. budget, and displaying a progress bar are all implemented with React state and no backend dependency.
Technical Craft F
The React code is clean and idiomatic, but there are no automated tests and no error boundaries or try/catch around any operations.