How We Work

Planning and sprints

How we plan, execute, and ship in focused cycles.

We work in focused cycles to maintain momentum while ensuring each release delivers real value. Our approach balances structure with flexibility.

Stable vs Nightly

We think of our releases in two modes: stable releases are polished, user-facing updates that should provide a noticeably better core experience; nightly builds are for internal testing and rapid iteration. Each stable release should make the app "sticky" — delivering a genuine improvement that reinforces the habit loop for users.

Planning Cadence

We meet monthly in person to plan the upcoming cycle. During this meeting, we discuss what to focus on for the month and define the outcomes for the next stable release. The result is a focused plan that's ambitious but achievable.

After the planning meeting, we organize work in a kanban-style board (implemented as GitHub Projects). This gives everyone visibility into what's in progress and what's coming next.

Sprint Structure

We typically work in weekly sprints within the larger planning cycle. Each sprint has clear requirements and deliverables. A typical sequence might include calendar integrations, then chat and export features, then templates and search, then polish and refinement.

Principles

One core value feature per stable — Each stable release should be anchored by one significant improvement to the core experience, plus a limited number of supporting changes. This keeps releases focused and meaningful.

Habit loop focus — Early versions prioritize reinforcing the habit loop. We want users to find Hyprnote indispensable for their daily workflow before we expand into adjacent features.

Ad-hoc discussions via huddles — For detailed discussions that need real-time collaboration, we use Slack huddles rather than lengthy async threads.

Ship and iterate — We prefer shipping something good and iterating based on feedback over waiting for perfection.