# Research Questions ## Open ### RQ-003 — Fastmail calendar API: JMAP vs CalDAV **Question**: For the custom app to read AND write the shared family calendar on Fastmail, is JMAP or CalDAV the cleaner integration? Can a scoped Fastmail API token grant calendar read-write without exposing the full account? **Why it matters**: The app brokers calendar access for all Apple members via the PWA, so reliable programmatic read-write to the Fastmail calendar is core. JMAP is Fastmail-native and modern; CalDAV is the interoperable standard. **Suggested approach**: Check Fastmail JMAP Calendars docs + API token scoping. Confirm event create/update/delete works via token. Compare to CalDAV (sabre-dav style) effort. --- ## Resolved ### RQ-001 — Vikunja MariaDB compatibility — SUPERSEDED Vikunja was dropped from the architecture (lists now live in the custom app's own MariaDB). The MariaDB findings still apply to the custom app itself: use MariaDB 10.6+, set `utf8mb4` collation, pin versions before upgrades. --- ### RQ-002 — CalDAV server: Radicale vs Baikal — SUPERSEDED Both dropped. The shared calendar now lives on **Fastmail**, not a self-hosted CalDAV server. Rationale: the Fastmail Android app cannot display a self-hosted CalDAV calendar, so Baikal gave the primary (Android/Fastmail) user no native benefit — it only helped Apple members, who are equally served by the PWA. Fastmail-hosted removes a self-hosted service while keeping native access for the Fastmail user and PWA access for everyone. Original finding (retained for reversibility): if self-hosting the calendar is ever required, **Baikal** (`ckulka/baikal`) is the pick over Radicale — Radicale has no native shared-calendar write support. --- ### Calendar host decision — RESOLVED Self-hosting the calendar data was evaluated and rejected. Fastmail (already paid for) hosts the shared family calendar. Other household members are Apple — they reach it via the PWA (default) or native Apple Calendar over CalDAV (optional). ### Email scope — RESOLVED Out of scope. Members keep existing mail clients unchanged.