Spec-first from seed to jack-o'-lantern: building Pumpkin Focus Timer with Kiro
This post is written as part of the Kiroween 2026 hackathon (#KiroweenHackathon26) — the Halloween-themed event on Devpost built around Kiro , AWS's agentic AI IDE. It's a build log of our project Pumpkin Focus Timer and, more importantly, an honest review of what spec-driven development actually felt like on a small, deadline-boxed project. The project Pumpkin Focus Timer is a zero-dependency…
This post is part of the Kiroween 2026 hackathon, a Halloween-themed event on Devpost centered around Kiro, AWS' agentic AI IDE. It is a build log of the project "Pumpkin Focus Timer" and an honest review of what spec-driven development felt like on a small, time-boxed project.
Pumpkin Focus Timer is a zero-dependency Pomodoro-style web app where a pumpkin grows through five stages as users accumulate focused seconds throughout the day. Once a session is completed, users are rewarded with a spooky Web Audio chime and celebration overlay. Daily stats persist in localStorage and reset at midnight. The project can be found at https://github.com/yuxing28/kiroween-pumpkin-focus-timer and live at https://yuxing28.github.io/kiroween-pumpkin-focus-timer/.
The developers utilized Kiro's spec-driven workflow before coding, creating requirements.md, design.md, and tasks.md documents. The EARS (When, If, The System Shall) format forced edge cases to be addressed early, such as tab throttling, storage failures, and midnight rollover. This resulted in a more thorough understanding of requirements before implementing the code.
One notable issue was the failure to implement the idle-to-running transition in the primary button handler. This oversight was discovered during the spec review and subsequently fixed with a property-based test that ensured every documented transition in the state machine was accurately handled. This experience illustrates that specs can catch design gaps, but automated checks need to be in place to tie the spec to the code.
The growth stages are driven by real focused seconds, with specific thresholds for motivation and the demo video. A QA affordance, ?smoke=1, was added to run 15-second sessions with compressed thresholds, allowing for automated QA and the creation of a full growth cycle video. The developer's main takeaway from Kiro is that spec review outperforms prompt iteration, and writing a spec that you'd want to inherit is crucial.
The EARS style, while initially bureaucratic, proved to catch edge cases effectively. Kiroween runs until December 4, so if you're curious about agentic IDEs, it's a great opportunity to experiment with Kiro on a small and spooky project.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.