Side project

2026

UnifiedDay

An iOS app that puts Apple Calendar events and Reminders in one daily timeline. Built in SwiftUI with no account and no server.

Role

Designer and builder

Timeline

Oct 2026, in progress

Team

Solo, with AI as a pair

Platform

iOS, SwiftUI, EventKit, Claude Code

Role

Designer and builder

Timeline

Oct 2026, in progress

Team

Solo, with AI as a pair

Platform

iOS, SwiftUI, EventKit, Claude Code

Status

In daily use, on its way to TestFlight

This isn’t a finished case study. It’s a look at an app I’m building right now, as both the designer and the developer, and using every day while I build it.

UnifiedDay is an iPhone app that shows Apple Calendar events and Apple Reminders together in one timeline for the day. There’s no new account and no server. Apple’s apps stay the source of truth, and anything you change in UnifiedDay shows up there within a few seconds.

UnifiedDay Calendar month view, Notes with attached items, and quick add

What works right now:

  • A Today timeline with sections for Overdue, Timed, All day and Due today

  • A Calendar tab with Week and Month views, and dots on days that have something on them

  • Quick add for events, reminders and notes, built to take under 10 seconds

  • Complete, edit, reschedule and delete without leaving the app

  • Needs Attention, a bell that collects overdue and due-today reminders in one list

  • In-app notes that attach to events and reminders and sync through private iCloud

  • Lock Screen alerts, an app icon badge and search across everything

I’m in the middle of a seven-day self-test on my own iPhone. It runs through November 7, before anyone else gets a TestFlight build.

Why

My day lives in two apps that don’t talk

Planning a day means bouncing between Calendar and Reminders. Meetings live in one app, tasks live in the other, and neither shows you both at once. I juggle a full-time design job, freelance clients, content and training, so that gap shows up every morning.

  • Calendar shows fixed commitments but treats tasks as an afterthought.

  • Reminders handles tasks well but has no sense of where they fit in the day.

  • Third-party planners solve it by asking you to move everything into their system and their account.

The bet with UnifiedDay is to keep the data where it already lives and just give it a better view. One timeline, fixed events next to flexible tasks, and nothing to migrate. I’m the first user. Any iPhone user who already lives in Apple Calendar and Reminders is the second.

Build

One phase at a time, tested on the phone

I started with a written spec and a phased build plan, then built it in Claude Code one phase at a time. A phase only counted as done when its acceptance check passed on my iPhone 16 Pro Max, not in the Simulator.

  • Phase 0. Xcode project, signing and permissions, then real events and reminders showing on Today.

  • Phase 1. Tap any row to edit it. Edits sync both ways with Apple’s apps in about five seconds.

  • Phase 2. Swipe right to move a reminder to Tomorrow or Next week. Overdue reminders also get Today.

  • Phase 3. Search, loading and empty states, permission screens that never dead-end, the badge and an accessibility pass.

Needs Attention with swipe actions, the Today timeline and quick add

Every phase built cleanly with Swift 6 strict concurrency and no warnings, and the app is still dependency-free. Since then I’ve added a Calendar tab, Needs Attention, alerts and notes, each driven by something I hit while using it.

Being the designer and the developer changes what gets designed. Permission copy, what happens when access is denied, and how a row behaves at the largest text size all needed real decisions, because the code won’t let you skip them.

Decisions

Small calls that shaped the app

  • Apple’s apps are the source of truth. No backend for v0.1, so there’s nothing to sign up for and nothing to keep in sync on my side.

  • Overdue reminders stay pinned at the top of Today until you complete or move them. No auto-roll, because a task that quietly moves forward is a task you forget.

  • Explain access before asking for it. Onboarding says in plain language what the app reads and that nothing leaves your device and iCloud.

  • Alerts are off by default, so the app never doubles up on notifications you already get from Calendar and Reminders unless you ask it to.

  • Notes are the first data that lives outside Apple’s apps. They’re stored in UnifiedDay with private iCloud sync, and a note on a repeating event covers the whole series.

  • Calendar got its own tab instead of becoming a separate app, so everything stays in one place.

What broke

Where the plan met the device

Testing on a real device caught problems a mockup never would:

  • The first scaffold didn’t compile under Swift 6. Reminder fetching had no async version and the compiler flagged data races, so the service layer had to be reworked.

  • Full calendar access on iOS 17 and later needs newer permission keys than the docs I started from listed.

  • Reminders with a date but no time showed up as 12:00 AM. They now sit in Due today.

  • Editing a repeating event could change the wrong occurrence. Edits now apply only to the one you tapped.

  • Large text sizes split times mid-word and truncated the header, so rows now stack at accessibility sizes.

  • Asking only for badge permission meant iOS never offered a Banners option. Requesting alerts, sound and badges together fixed it.

Next

Use it for a week, then ship it

The plan from here:

  • Finish the seven-day self-test and fix whatever is confusing or broken.

  • Build an iOS widget in small, medium and Lock Screen sizes, shaped by what I actually reach for during the test.

  • Ship a TestFlight build and get it into other people’s hands.

  • Start v0.2 integrations: two-way Notion task sync, Google Drive attachments, and Zoom or Google Meet links from any item.

Further out, I want a Mac version that reads the same Calendar and Reminders data, so it syncs through iCloud with no server.

Deiondrick Roberts

Product & web designer focused on clean systems, smooth interactions, and meaningful details.

© 2026 by Deiondrick Roberts

Contact

Deiondrick Roberts

Product & web designer focused on clean systems, smooth interactions, and meaningful details.

© 2026 by Deiondrick Roberts

Contact

Deiondrick Roberts

Product & web designer focused on clean systems, smooth interactions, and meaningful details.

© 2026 by Deiondrick Roberts

Contact