--- title: Kick off FamilySync with /gsd:new-project date: 2026-06-02 priority: high --- # Kick off FamilySync with /gsd:new-project Run `/gsd:new-project` to formalize the architecture decisions into a PROJECT.md, REQUIREMENTS.md, and ROADMAP.md with phase breakdown. Architecture is verified and settled (see `.planning/notes/familysync-architecture.md`). ## Pre-work before running - [ ] (Optional) Answer RQ-003: Fastmail calendar API — JMAP vs CalDAV for app read/write - [ ] Review `.planning/notes/familysync-architecture.md` — feed this into the project questionnaire ## Context to bring into the session - Family hub modeled on Skylight. Owner on Fastmail/Android; other members Apple. Wife adoption is a hard UX constraint (one slick PWA). - **Calendar**: hosted on Fastmail (NOT self-hosted). Custom app brokers read/write via JMAP/CalDAV token. Owner native in Fastmail app; Apple members via PWA. - **Lists + display**: one self-hosted custom app — backend + MariaDB, aggregates calendars into a Skylight-style view, owns shared lists, serves React PWA (phones + wall-display kiosk). - **Auth**: Authelia OIDC for the app. - **Infra**: Unraid + Docker Compose + Pangolin/Newt + split-DNS. MariaDB + Redis. - **Dropped**: Baikal, Vikunja, DAVx5 (see architecture note for why). - **Out of scope**: email. **Excluded**: PostgreSQL, App Store/React Native, forking. - Net: build ONE app on top of existing Fastmail.