In development · April 19, 2026
Meridian
Native macOS life-OS unifying calendar, tasks, Canvas LMS, and a structured workspace into one calm, keyboard-first desktop app.
Meridian is a native Mac app I built to solve a problem I kept running into: my weekly schedule was split across Apple Calendar, iCloud, Google Calendar, Canvas LMS, Reminders, and three different notes apps. Answering "what's actually due this week?" meant opening six tabs and stitching the picture together in my head. Meridian is the app that should have existed — one surface, every source.
The architecture is built around a unified CalendarFeed — a single service that aggregates four previously-siloed data sources (local events, planned time blocks, Canvas assignment due dates, and EventKit-proxied Google/iCloud events) into one drawable stream every view reads from. Adding a new provider is one method change; silently losing a data source is structurally impossible.
The app ships as five SPM library targets (Core, Calendar, Canvas, Planning, Keychain) plus the SwiftUI app target, so the logic that matters — recurrence expansion, overlap-cluster layout, Canvas sync merging, planning heuristics — is testable without a window. 47 unit tests run in under 10ms.
The planning engine is the part I'm proudest of. It's not an LLM — it's a deterministic scoring pass over open work (urgency × priority × size × blocker-boost), a chunking step that splits large estimates into ~90-minute blocks, and a slot-finder that respects existing commitments and user availability bands. The engine proposes a plan; the user approves it. No silent rescheduling, no false-precision percentages, no guilt-inducing streaks.
Canvas LMS integration is the load-bearing feature for students. I wrote the client from scratch — OAuth-token auth in a sandboxed file, Link-header pagination, rate-limit backoff, and a merge policy that keeps Canvas-authoritative fields in sync while never clobbering local user enrichments (priority, estimate, notes, "mark as done" overrides).