The planning matrix
Our planning surface for a year a calendar cannot hold: months are columns, days are rows. Doctrine came before features. Pre-launch, with the tests already green.
PROBLEM No calendar fits a year.
It is pre-launch, and its name stays unpublished until launch.
A calendar's native unit is the day or the week. A question about capacity across a quarter has no answer at that resolution. The reader ends up holding the year in their head instead of on the screen.
The product started as our own colour-coded spreadsheet, tracking travel, stays, conferences and milestones across twelve months. That spreadsheet proved the job exists. It also proved the workaround: a matrix nobody built for the purpose, doing the job anyway.
The people it targets manage three or more overlapping life dimensions across quarters and years: consultants, expat founders, travel-heavy professionals.
APPROACH Doctrine before features.
It runs on macOS, web, iOS and Android from one Flutter codebase, on Riverpod and GoRouter.
No month view, ever.
We wrote the doctrine before the features, and it is falsifiable: no month view, no week view, no day view.
Day-level detail sits alongside the matrix as inspection; it never becomes a separate screen or a different paradigm.
Every feature request is resolved against the doctrine, not against a competitor's screenshot.
The matrix carries layers and states.
Structured compression is the value, not empty minimalism: the matrix stays dense rather than hiding information for looks.
Every plan item belongs to one thematic layer: work, travel or personal. Sharing is the same object model with access attached, not a bolted-on feature.
Draft, confirmed and AI-suggested are three first-class states. Only confirmed items sync outward, so the planning space stays safe for unfinished thinking.
An MCP server, not a chatbot.
There is no in-app AI surface and no AI provider dependency inside the product itself.
The user connects their own client instead, to a schema-constrained MCP server. It exposes seven planning tools: read context, search, summarize, propose patch, preview impact, save draft, apply confirmed patch.
AI proposes; the user confirms; the matrix stays the source of truth.
Every commit is CI-green.
Typed results replace thrown exceptions, and typed patch objects replace loose maps.
Design tokens replace hardcoded values, ports replace cross-feature coupling, and clocks are injected rather than read from the wall.
We set row-level security to default-deny on every table.
Edge functions run through one audited handler shell: CORS allowlist, method gate, JWT verification, rate limiting.
UUIDs are anonymised before they reach a log.
GDPR export and delete are shipped features, not a promise for later.
RESULT Seven tools, every test green.
It has not shipped. Nothing here is a claim about a live user. It is a report on what the codebase does today, checked by its own tests.
What holds today.
From the brief of record, 5 August 2026. Nothing here carries a check link, because nothing about this product is public before launch.
“Done” means five jobs, from the brief of record. See the year clearly: every commitment in one matrix. Turn chaos into structure: unstructured input becomes typed plan items. Judge capacity long-range: density, gaps and collisions obvious at a glance. Coordinate dimensions: layers separate work, travel and personal in one view. Replace the spreadsheet: real types, states and spanning, not merged cells.
None of the five is proven the way Kickgeist's evidence is: by an operator, against a deadline nobody controlled.
What is proven is narrower. The doctrine held long enough to write the tests above, and they are all still green.
Tell us what is in the way.
Say what you're building and where it stopped.
hello@beevelop.comCopy it into your mail client if that is easier.
The draft opens with
- What you are building
- What is in the way
- The stack
- When you want to start
The contact page says who answers, and what the reply contains.
Read the The agent pipeline debrief next.
