🌱 Sprout

Your Digital Companion for Mindful Screen Time

Sprout is a React Native mobile application that gamifies digital wellbeing. By tying your screen time habits to the health of an adorable digital companion, it transforms cold, easily-ignored app limits into an emotional, engaging experience that genuinely helps you break the doom-scrolling cycle.


🚨 The Problem: Cold Limits vs. Human Emotion

Today, our smartphones are engineered to capture and hold our attention. In response, modern operating systems introduced "Screen Time" features with daily app limits.

However, these built-in limits share a critical flaw: they are emotionally detached. When you hit a 15-minute limit on a social media app, a cold, gray screen pops up. What do 99% of users do? They simply tap "Ignore for 15 minutes" or "Ignore for today" and continue scrolling. There is no emotional friction, no consequence, and no genuine moment of reflection.

The "speed bump" is too small to stop a speeding car. People need more than just a timer; they need a reason to care.

The Question: What if ignoring your screen time limit had an emotional consequence? What if you were responsible for something that depended on your digital discipline?


💡 The Solution (Inspiration)

This exact dilemma inspired Sprout.

Imagine you are doom-scrolling on a "Danger App." Suddenly, you get a notification: your digital companion is beginning to feel sick. If you keep scrolling and hit your limit, they will wither away.

Sprout acts as an emotional guardrail for your digital life. It ensures that your screen time has tangible stakes—allowing users to build healthier habits through empathy and gamification, rather than cold, clinical restrictions.


🚀 What It Does

Sprout utilizes native device usage tracking to enforce mindful habits:

  • 🛡️ Companion Gamification: Adopt a digital pet (like Axel the Axolotl) whose health directly reflects your screen time discipline.
  • Real-Time Usage Tracking: Seamless background tracking of designated "Danger Apps" with an intuitive visual dashboard.
  • 🎯 Gradual Degradation: Your companion visually changes states (Happy -> Worried -> Begging -> Withered) as you approach and exceed your limits.
  • 🖥️ Recovery Mode: A 5-minute interactive timeout that forces you to put the phone down, cycling through mindful, open-ended questions to break your scrolling trance.
  • Revival System: Complete the reflection period to revive your companion and reset your mindset for the day.

Key Innovation: We implement mindful friction for recovery. Instead of a 1-second passcode bypass, users must endure a real-time, 5-minute "Time to Reflect" session. This physical pause forces the user out of their dopamine loop and encourages genuine self-reflection.


🛠️ How We Built It

  • Framework: React Native (Bare Workflow) for robust cross-platform capabilities.
  • Tracking: Native OS-level APIs for precise, system-level app usage tracking without draining the battery.
  • UI/UX: react-native-svg for dynamic progress rings and Animated for smooth, native-driven micro-animations (like the idle floating effect).
  • State Management: React Hooks combined with AppState to monitor foreground/background transitions.
  • Assets: Custom-designed pixel art companions with multiple health states, optimized for mobile rendering.

🚧 Challenges We Ran Into

  1. Native Permissions: Accessing deep system-level usage statistics requires special elevated OS permissions. Building the bridge between React Native and the native device layer to securely request and read this data was a significant architectural hurdle.
  2. Background Tracking Integrity: We had to ensure that users couldn't cheat the "Recovery Mode." If a user backgrounds the app during the 5-minute reflection period, the app intercepts the AppState change and instantly fails the reflection, withering the companion.
  3. Animation Performance: Managing continuous, looping animations for the pets alongside high-frequency timer updates caused UI stuttering. We implemented useNativeDriver: true to offload the animations to the native UI thread, ensuring a buttery-smooth 60fps experience.

✨ Accomplishments We're Proud Of

  • Zero-Data Collection: All usage tracking happens 100% locally on the device. No personal data or app usage statistics are ever sent to a server.
  • Seamless UI Integration: Successfully ported a highly polished, interactive UI concept into a fully functional, native mobile application.
  • Genuine Impact: Creating an app that doesn't just block access, but actually guides the user through a mindful recovery process to build better long-term habits.

🧠 What We Learned

  • Emotional Design: Incorporating empathy into UI design (like a begging companion) is vastly more effective for behavior change than static warnings.
  • Native Bridging: Deep integration with native OS APIs provides capabilities that standard React Native simply cannot offer.
  • The Power of Friction: Sometimes, adding friction (like a 5-minute unskippable timer) is the best feature you can build for your users.

🔮 What's Next for Sprout

  • Ecosystem Expansion: Adding new companions, habitats, and unlockable accessories rewarded for maintaining streaks of healthy screen time.
  • Social Accountability: A feature to link your companion's health with a friend or partner to build mutual digital discipline.
  • Advanced Analytics: A detailed weekly breakdown of your digital habits and companion health trends.
Share this project:

Updates