JelleOS — van idee naar dashboard (plus een avond polish)
De afgelopen dagen gaat het snel. Kruidenla, kanban, hardloopplanner, een chores-matrix — kleine MVPs die ik uitrol om te leren en omdat ik ze zelf nuttig vind. JelleBuilds bestaat nog maar kort; het voelt niet als een groot project, meer als een stroom van ideeën die ik meteen probeer.
Kleine MVPs
Het patroon tot nu toe: elk ding krijgt een eigen localStorage-key en doet één ding goed. Bewust simpel. Geen backend, geen login — gewoon bouwen en kijken of het werkt.
Chores sorteert klusjes op impact en inspanning. Pantry houdt je kruidenla bij. RunLog plant je trainingen. Jello is het kanban-bord waar alles naartoe kan.
JelleOS
Maar terwijl ik bezig ben, denk ik al door. Kan een klus uit Chores naar Jello? Zou voorraad in Pantry iets kunnen triggeren? Waar zie ik in één oogopslag wat er openstaat? Dat noem ik voorlopig JelleOS — eerst een notitie aan mezelf, daarna code.
Die avond werd het idee concreet. JelleOS kreeg een read-only dashboard op /jelleos dat snapshots uitleest uit localStorage (Chores, Pantry, RunLog, Jello), plus een widget op de homepage tussen Experimenten en Lab Journal. Geen backend, geen sync — gewoon kijken of het nuttig voelt. Fase 2 uit het oorspronkelijke idee, in één avond.
Ik schrijf het op zodat het idee niet verdwijnt als ik morgen weer iets anders ship. En omdat het laat zien hoe het hier werkt: niet eerst alles uitdenken, maar bouwen en ondertussen al naar de volgende stap kijken.
Polish-avond
Dezelfde avond was verder geen moment voor hero-features, maar wel voor dingen die een site echt af maken. Het begon met feedback op JelleOS: tekst was niet overal goed leesbaar. Een contrastcheck liet zien waarom — koraal op cream haalt WCAG AA niet voor kleine tekst, en muted taupe zat net onder de grens. Oplossing: donkerdere tekstvarianten voor links en secundaire copy, terwijl het felle koraal voor knoppen blijft. JelleOS miste bovendien zijn CSS-tokens volledig — geen wonder dat het dashboard er raar uitzag.
Ondertussen een echt portret in plaats van de placeholder-SVG. Klein detail, groot verschil in de Over mij-sectie.
Twee Next.js-problemen die je lokaal niet ziet. Jello toonde geen kolommen meer na client-side navigatie: id="kanbanBoard" botste met window.kanbanBoard. Hernoemd naar jello-board, boot-logica aangepast, klaar. En de navigatie die verschoven leek als je van een experimentpagina terugging naar home: klassieke scrollbar-layoutshift. scrollbar-gutter: stable op html, plus een gedeelde site-layout zodat de header niet bij elke pagina opnieuw mount.
Alles naar productie, release-logs op de experimentpagina's aangevuld. Geen hero-feature, wel het soort werk dat je site betrouwbaar maakt — en precies waar ik van leer als ik niet alleen bouw maar ook ship.