Problem
SteleKit has no calendar/heatmap view for browsing journal entries. Journal pages already exist as a first-class concept (JournalService.kt, JournalsViewModel.kt, project_plans/journal-watch-fix/), but the only way to navigate them today is presumably a chronological list — there's no day/month/year calendar UI to jump to or create a specific day's entry, and no at-a-glance density view of which days have entries.
Trilium Notes' Calendar collection (https://docs.triliumnotes.org/user-guide/collections/calendar) covers this: week/month/year/list views, click-a-day to create/open that day's note, drag-to-create multi-day spans, and journal/day-note integration via a dateNote-style attribute. Logseq itself has long relied on third-party plugins for the same gap, so this would be a genuine differentiator rather than parity-for-parity's-sake.
Why this matters
- Journals are core to SteleKit's Zettelkasten-inspired workflow (per the README's "journal daily" framing) — a calendar view is the natural complement to daily journaling, giving both quick navigation (jump to a specific past date) and a review surface (spot gaps in journaling habit at a glance, similar to a GitHub-style contribution heatmap).
Suggested scope (v1)
- Month view: grid of days, days with a journal entry visually marked; click a day to open (or create, if empty) that day's journal page.
- Simple heatmap coloring by entry length/block-count as a lightweight "did I journal today" signal.
- Out of scope for v1: week/year/list views, event notes with time-of-day/duration (this is about journal-day navigation, not general-purpose event scheduling), recurring events, multi-day spans.
References
kmp/src/commonMain/kotlin/dev/stapler/stelekit/repository/JournalService.kt
kmp/src/commonMain/kotlin/dev/stapler/stelekit/ui/screens/JournalsViewModel.kt
project_plans/journal-watch-fix/requirements.md (disk-watch reliability for journals — different problem, adjacent area)
Problem
SteleKit has no calendar/heatmap view for browsing journal entries. Journal pages already exist as a first-class concept (
JournalService.kt,JournalsViewModel.kt,project_plans/journal-watch-fix/), but the only way to navigate them today is presumably a chronological list — there's no day/month/year calendar UI to jump to or create a specific day's entry, and no at-a-glance density view of which days have entries.Trilium Notes' Calendar collection (https://docs.triliumnotes.org/user-guide/collections/calendar) covers this: week/month/year/list views, click-a-day to create/open that day's note, drag-to-create multi-day spans, and journal/day-note integration via a
dateNote-style attribute. Logseq itself has long relied on third-party plugins for the same gap, so this would be a genuine differentiator rather than parity-for-parity's-sake.Why this matters
Suggested scope (v1)
References
kmp/src/commonMain/kotlin/dev/stapler/stelekit/repository/JournalService.ktkmp/src/commonMain/kotlin/dev/stapler/stelekit/ui/screens/JournalsViewModel.ktproject_plans/journal-watch-fix/requirements.md(disk-watch reliability for journals — different problem, adjacent area)