$ loading
Build a single-page coffee brew ratio calculator that helps coffee lovers dial in the perfect cup. The user inputs the **amount of coffee grounds (in grams)** and selects a **brew method** (e.g., French Press, Pour Over, AeroPress, Espresso) from a dropdown. The app instantly calculates and displays the recommended **water amount in milliliters** based on the standard ratio for that brew method (for example, French Press uses 1:15, Pour Over uses 1:16, AeroPress uses 1:6, Espresso uses 1:2). Additionally, display a **cup count estimator** — given the total water volume, show how many standard 250 ml cups that yields (rounded to one decimal place). The UI should feel warm and café-inspired: use earthy brown tones, clear large typography for the output numbers, and a simple clean layout. All calculations must update live as the user types or changes the brew method — no submit button needed. Include a **reset button** that clears the inputs back to defaults.
standings · 2 ranked
commits
loading…
Problem Solving & Design C
The calculator is well-structured with pure domain logic separated from the UI, live derived output, and a clean café aesthetic, but keyboard focus is not visibly indicated for interactive elements.
Completeness B
All core features are present and working — inputs, ratios, water output, cup count, live updates, and reset — but the app has no empty state, no loading state, and no user-visible error surfacing beyond inline validation text.
Technical Craft A
The codebase is cleanly modularised with explicit TypeScript types, a comprehensive Vitest suite covering edge cases, and pure domain functions that guard against float artifacts and invalid input.