House Rules
An iOS app that transforms roommate agreements into a living system with clear rules, flexible chore management, and transparent accountability.
Role
Overview
House Rules is an iOS app designed to reduce friction in shared living spaces. The app turns informal roommate agreements into a structured, transparent system where everyone understands and can track their responsibilities.
I designed and built the app end-to-end, shaping both its user experience and technical architecture. The goal was to create something that felt effortless to use while solving a genuinely frustrating problem that most roommates face.
Visual Design
Using Apple's Icon Composer, the app icon was designed around the idea of structured lists and rules, represented through clean linework integrated into the silhouette of a house. The iconography maintains clarity at all sizes while establishing immediate brand recognition.
Flexible Chore Management
The chore system was designed with real-world flexibility in mind. Users can bump overdue chores to extend deadlines by 24 hours, pass chores when unavailable for others to pick up, and automatically open past-due chores to all housemates for completion.
This approach acknowledges that life happens—schedules change, priorities shift—while still maintaining accountability within the household.
Rule Change Approval
Any modifications to house rules require consensus from all housemates before becoming permanent. This democratic approach ensures everyone stays on the same page and prevents unilateral changes that could cause friction.
The approval flow is designed to be lightweight—a simple notification and one-tap response—so it doesn't become a bottleneck for minor updates.

Technical Stack
The app's frontend is built entirely in Swift and SwiftUI, delivering a smooth and fully native iOS experience. The declarative UI framework allowed for rapid iteration on interface details while maintaining performance.
On the backend, Firebase handles authentication, real-time synchronization, and storage. The overall architecture follows an MVVM-inspired pattern, using observable view models and Cloud Functions to keep the system modular and responsive. Real-time listeners ensure that changes propagate instantly across all connected devices.
