Fuel Planner

The day's plan, half in your kitchen

Six static layouts · rings · slot ledger · grocery gap · eating window · training fit · composed

A — Fuel Rings

dual ring · adjusted target

Dual concentric ring — protein (outer) vs calories (inner) — each against the training-adjusted target. The number stack sits in the center; mono receipts show how the target moved from baseline.

142g

protein

1980 kcal

ADJUSTED FOR TODAY · CLIMB

protein

142 / 240 g

220 → 240 · +20 climb

calories

1980 / 3150 kcal

2800 → 3150 · +350 ride

Outer arc is protein, inner arc is calories — when one lags the other, the day reads protein-short at a glance.

B — Day Ledger

slot ledger · pantry/shop tag

The day as a vertical clock — one line per slot. Time rail, meal, a 3-segment macro micro-bar (protein/carbs/fat), and a single tag: from pantry (quiet) or needs shopping (the only accent). Actions stay a whisper.

07:30

Greek yogurt, oats & berries

+38p · +52c · +12f
from pantry
accept·swap·skip
12:30

Lentil & quinoa bowl

+31p · +60c · +14f
from pantry
accept·swap·skip
18:30

Salmon, rice & greens

+46p · +70c · +22f
needs shopping
accept·swap·skip
21:00

Cottage cheese & berries

+25p · +18c · +6f
from pantry
accept·swap·skip
proteincarbsfat

C — Grocery Gap

gap card · add-all CTA

What's missing from the pantry to close the plan, framed as completion not shortfall. Each item names the meal it unlocks; one CTA adds everything to the shopping list.

Grocery gap

91/95 on hand

4 items close today's plan

Salmon fillet (2)unlocks Dinner
Fresh greensunlocks Dinner
Lemonunlocks Dinner
Cottage cheeseunlocks Snack
Add all → shopping list

D — Eating Window

letterbox timeline · pre-sleep gap

A letterbox timeline — first meal to last, sleep block at the right edge, pre-sleep gap between. A healthy gap is quiet; a collapsed gap is the only warning on the screen.

Today · healthy gap

07:3021:00sleep 23:30

pre-sleep gap 2.5h · healthy · window 13.5h

Collapsed gap — late-night load (the only red on the screen)

09:0023:40sleep 23:55

pre-sleep gap 0.25h · too close to sleep · window 14.7h

E — Training Fit

0–1 fit bars · modality

Horizontal 0–1 bars — how well today's planned intake serves the day's modality. A climb day weights protein and magnesium; the tick marks the 0.75 target.

Fuel ↔ training fit

today · climb

protein
0.86
magnesium
0.54
carbs
0.72

tick = 0.75 target · climb weights protein + magnesium

Bar fill is how well the planned intake serves a climb day — magnesium is the lagging dimension.

F — Planner (composed)

ring + ledger + gap + window + fit

All organs assembled into the real daily screen — ring header, slot ledger, eating-window strip, grocery gap, and training fit.

142g

protein

WEDNESDAY · CLIMB DAY

1980 / 3150 kcal

28003150 · +350 ride  ·  protein 220240

07:30

Greek yogurt, oats & berries

from pantry
accept·swap·skip
12:30

Lentil & quinoa bowl

from pantry
accept·swap·skip
18:30

Salmon, rice & greens

needs shopping
accept·swap·skip
21:00

Cottage cheese & berries

from pantry
accept·swap·skip
07:3021:00sleep 23:30

pre-sleep gap 2.5h · healthy · window 13.5h

Grocery gap · 91/95 on hand

Salmon fillet (2)Dinner
Fresh greensDinner
LemonDinner
Add all → list

Training fit · climb

protein
0.86
magnesium
0.54
carbs
0.72

/fuel-planner-lab

6 variants · F composed