Calendar Widget

🏔️ Calendar Widget

Objective

Bastion needs a calendar. Phase 2 will wire it to the noosphere's
~/Public/Black/Temporal/Daily Notes/ cascade so clicking a date opens that
day's note. Phase 1 builds the calendar as a pure UI element, machine- and
data-independent. The boundary matters: the widget should hold its own state
(current month, cursor date) and emit events when the user navigates — it does
not know what a daily note is.

This is also a useful test case for the plugin contracts (M4): a Calendar
plugin registers a Panel and a Command (calendar.jump-to-today,
calendar.next-month, etc.) and that's it.

Success Criteria

  • crates/bastion-plugin-calendar/ implements PanelPlugin
  • Monthly grid with day-of-week headers (Mon-Sun or Sun-Sat — configurable via Settings)
  • Today's date is visibly distinct from other dates (DPN_GOLD accent recommended)
  • Cursor date is visibly distinct from today (DPN_CYAN highlight recommended)
  • Keys when calendar pane is focused:
    • h/l or arrow Left/
No due date
100% Completed
#1 by n8k99 was closed 2026-05-19 15:13:59 -04:00 0 / 14