← Connor Linehan
Case Study
NoRush
A faith-centered rest app: once a day, the whole app is prompted at a surprise time to stop and share a photo of their rest within a seven-minute window.
Swift · SwiftUIFirebaseLive on the App Store
01 — The Problem
A rest app is only as good as its community.
Anyone can build a countdown timer. The hard part was the social side: a BeReal-style daily prompt only works if it fires for everyone at once, on their own time zone, and the feed feels alive when they open it.
02 — The Build
Client, backend, and the plumbing between them.
- Client: SwiftUI, built on an MVVM architecture.
- Backend: Firebase — Auth, Firestore, Cloud Storage, and Cloud Messaging — plus TypeScript Cloud Functions running the scheduled, timezone-aware daily notification.
- Live activity: a lock-screen countdown via APNs push-to-start ActivityKit Live Activities.
- Real-time: Firestore listeners with optimistic UI, 1:1 and group messaging, and content-moderation security rules.
Why it matteredSupporting the community side meant designing and building a full social platform solo — accounts, a real-time feed, and the systems to keep it all in sync — not just a single-player utility.