Inspiration
I’ve always been fascinated by the psychology of habits. Most habit trackers felt either too superficial (just ticking boxes) or too punishing when you missed a day. I wanted something that captured real progress — the good and the bad — while still keeping you motivated. That’s how Pact was born.
What it does
Pact is a habit tracker that uses a unique check-in system. Each day, you can log a Positive or Negative check-in. Positive earns you points, Negative subtracts. Streaks start on the first positive check-in, and they reset if you miss a day or slip up. The app gives you a GitHub-style history grid, stats, scores, streaks, and a Today View so you always know where you stand.
How we built it
I built Pact as a solo project in SwiftUI, with all design, logic, and development done from scratch. The check-in engine was the most intricate part — handling scoring, overwrites, streak resets, and even future check-ins. I also spent time designing a clean onboarding and a simple UI that works in both light and dark mode.
Challenges we ran into
Designing the scoring + streak system was tricky. I wanted it to feel fair and motivating, not discouraging. Getting the logic right for multiple check-ins per day, retroactive changes, and stats took several iterations. Balancing “accountability” with “flexibility” was another big challenge.
Accomplishments that we're proud of
- Built and shipped my first iOS app end-to-end.
- Designed a unique habit check-in model that doesn’t exist in other trackers.
- Learned to balance product thinking with engineering, iterating on what would keep users motivated.
What we learned
- Building products solo is as much about scope management as coding.
- Users don’t just want to track habits; they want to feel honest progress.
- Small UX touches (like onboarding or score resets) make a huge difference in engagement.
- My experience as a developer turned product owner in my full-time job really helped me manage this project
What's next for Habit Tracker: Pact
There's a lot I've thought of, but the top of my list includes
- Reminders & notifications to nudge consistency.
- Home screen widgets (interactive)
- Smarter insights powered by the check-in history to point out trends, etc..
Built With
- swift
- swiftui
Log in or sign up for Devpost to join the conversation.