All Projects

FocusGrid

Productivity app for focused work

React NativeExpo
focusgridapp.com
Screenshot of FocusGrid — Productivity app for focused work

Overview

FocusGrid is a habit tracking and productivity app I built to make building habits feel rewarding, not tedious and has grown to over 1,000 users.

The concept is simple: a visual, grid-based system where you create habits, track streaks, and stay accountable through optional social features.

The Challenge

Most habit trackers feel like chores themselves. Either too complex with dozens of settings per habit, or too simple with just a checkbox and no context. I wanted to build something in the sweet spot: visually satisfying, fast enough to use daily, and social enough to keep you motivated without becoming another feed to scroll.

  • Make daily logging fast and frictionless (under 5 seconds)
  • Provide streak tracking that actually motivates consistency
  • Add social features without overwhelming the core experience
  • Send smart reminders that help without being annoying

The Solution

I built FocusGrid with React Native and Expo, focused on a clean, minimal interface where the grid itself is the main interaction. Each habit gets a cell in your daily grid. Tap to log, hold to customize. Streaks build visually so you can see your consistency at a glance.

Key Features

  • Habit Creation — Create habits with custom names, icons, and frequency goals. Set daily, weekly, or custom schedules that fit your routine.
  • Streak Tracking — Tap to log, watch your streak grow. The grid view gives you a bird's-eye view of your consistency over time.
  • Social Sharing — Share your grid with friends and build habits together. Optional and non-intrusive.
  • Smart Reminders — Notifications that nudge you to log your habits.

Technical Highlights

Built with React Native and Expo for cross-platform delivery. The grid rendering is optimized for smooth scrolling and quick interactions. Expo's push notification service handles reminders.

The app uses a component architecture that keeps each habit cell self-contained, making it straightforward to add new habit types and visualization modes without touching core grid logic.