Pre-style the first-run default board to showcase widgets#76
Merged
Conversation
A brand-new tab previously showed just two uncolored (slate) cards — a
clock and a countdown — which undersold what the board can do and felt
unfinished. Seed a calm, varied, pre-colored board instead so the first
open feels intentionally customized and reveals the range of widgets at a
glance. Everything stays editable; these are just inviting starting points.
createDefaultWidgets() now returns six curated widgets across five kinds
with a harmonious palette (cool body plus two warm accents):
- clock "Local time" (sky)
- countdown "Tomorrow morning" (indigo), repeating daily so it stays
evergreen instead of slipping into the past after day one
- note "Welcome" (emerald) with a warm starter message
- quote "Today's reminder" (violet), daily rotation
- habit "Daily walk" (amber)
- countdown "This year" (rose) shown as a progress bar over the calendar
year, so the bar is always a meaningful fraction and never needs to roll
The progress bar intentionally lives on the fixed year span rather than the
daily anchor: getCountdownProgress is fed the rolled target but the stored
startAt, so a repeating progress countdown would degrade after its first
day; a fixed Jan 1 -> next Jan 1 span avoids that entirely.
Per-kind "Add widget" defaults stay slate (unchanged); only the first-run
seed is styled.
Tests: storage unit test updated for the new default kinds/length. e2e
assertions updated for the six-widget board (exact title lists, drag-handle
count, middle-item keyboard nav, body-drag starting past the new color dot,
quote scoped to its own card). A few tests that add a widget or expand the
archived section get a taller viewport because appended widgets / the
expanded archive now sit lower and the context menu dismisses on scroll.
AGENTS.md: corrected a stale line that forbade per-item color, which is a
shipped preset feature this board relies on.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
A brand-new tab used to show just two uncolored (slate) cards — a clock and a countdown — which undersold the board and felt unfinished. This seeds a calm, varied, pre-colored first-run board so the first open feels intentionally customized and reveals the range of widgets at a glance. Everything stays editable; these are just inviting starting points.
createDefaultWidgets()now returns six curated widgets across five kinds, with a harmonious palette (cool body + two warm accents):repeats daily(stays evergreen)Notes
getCountdownProgressis fed the rolled target but the storedstartAt, so a repeating progress countdown would degrade after its first day; the fixed span is always a meaningful fraction and never needs to roll.AGENTS.md: corrected a stale line that forbade per-item color, which is a shipped preset feature this board relies on.Tests
storageunit test updated for the new default kinds/length.Verification
tsc --noEmit· ✅ 109 unit tests · ✅ Chrome + Edge builds · ✅ 38 Playwright e2eScreenshot