Skip to content

PairPage

A private shared scrapbook, one page a day

PairPage Today canvas with handwritten note and scrapbook objects
ongoingiOS2026

Platform

iOS (SwiftUI, GRDB, Supabase, WidgetKit).

What it does

A private scrapbook for two people. One shared page a day: writing, photos, stickers, drawing, comments. Past days are kept in the Scrapbook.

Highlights

  • ▸Two people pair over a magic link. There is no public feed, no followers, and no room for a third person on the page.
  • ▸Both people can write, add photos, and draw on today's page at the same time. The page is one shared object, not a chat thread with turns.
  • ▸The home-screen widget sends a photo to today's page. It only works for the two paired people, not for anyone who picks up the phone.

Architecture

Two-person pairing, with each object on the page synced on its own. Supabase (Postgres with row-level security, plus Edge Functions) is the shared store, and GRDB caches it on the phone. A WidgetKit widget sends straight to the shared page. Motion, haptics, and empty states follow one shared set of interaction rules. Builds go to TestFlight through Fastlane. I am now finishing the widget and the tutorial ahead of TestFlight.

Stack

SwiftSwiftUIGRDBSupabaseWidgetKit