Version bumped to 1.2.0 / 9. No code changes beyond the version — 1.2.0 is the create slice: event form, "+" FAB on every view, last-used-calendar preselect, provider-correct all-day storage. CHANGELOG [1.2.0] carries the details; ROADMAP/STATE mark slice v1.2 shipped. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2.7 KiB
Calendula — Current State
Last updated: 2026-06-11
Status
Milestone: v2.0 — Write support (milestone 2, in progress)
Phase: v1.2.0 shipped 2026-06-11 (create event), after v1.1.0 the same
day (write foundation + delete). Milestone 2 runs in four slices
(docs/superpowers/plans/2026-06-11-03-write-support.md); next up is v1.3
(edit event).
Progress
-
Design spec written and committed (
docs/superpowers/specs/2026-06-08-calendar-app-design.md) -
V1 design decisions resolved (App name "Calendula", icon, seed color)
-
Plan 01 written and executed — foundation lands (theme, icon, i18n, Hilt, DataStore, CI green)
-
Plan 02 written and executed — data layer + permission flow + debug screen
-
Month view (S1) — 6-week grid, event dots, today marker, swipe nav, three states (replaces debug screen)
-
Week view (S2) — time schedule with overlap-resolved lanes, all-day strip, swipe nav, three states
-
Day view (S3) — single-column slice reusing the week layout
-
View-switcher (M1) wired — cycles Month ↔ Week ↔ Day
-
Event-detail screen (S4) — full-screen, humanized recurrence
-
Filter sheet (M3) — per-calendar visibility, grouped by account, persisted, applied centrally in the repository
-
Settings (M4) — appearance (theme, dynamic colour, week start), language (per-app locales), about
-
[~] Jump-to-date (M2) — cut from scope; "Today" half shipped in v0.5, date-picker dropped
-
Full event read (v0.6) — reminders, status, availability, access level, attendee role + self-response, foreign timezone, and linkified description URLs in the detail view; new domain enums + mapper unit tests. (A dedicated URL field was cut — no
CalendarContractcolumn backs it.) -
v1.1 write foundation —
WRITE_CALENDAR(onboarding asks READ+WRITE, only READ gates; contextual upgrade for v1.0 installs), read-only-calendar detection (CALENDAR_ACCESS_LEVEL→canModifyContents, actions hidden for WebCal/birthday calendars), delete from the detail screen (recurring: "only this event" via cancelled exception / "all events in the series"), repository + mapper tests -
v1.2 create event — full-screen
EventEditScreen(title, all-day, M3 date/time pickers with duration-preserving start moves, writable-only calendar picker preselecting the last-used calendar, location, description), "+" FAB on all three views prefilled with the visible day,insertEventwith provider-correct all-day normalisation (UTC midnights, exclusive end), domain/mapper/repository tests
Next
- v1.3 — edit event: reuse the form, series edit, reminder edit, simple recurrence picker
- Monitor the F-Droid build/publish for v1.1.0 / v1.2.0