Inspiration
We wanted to build something that makes taking care of yourself feel less like a checklist and more like something you actually want to come back to.
Many habit and productivity apps focus heavily on statistics, streaks, and notifications. We wanted to try a different approach: give your habits a personality.
That idea became Blob Buddy — a small character that reacts to the way you take care of your everyday habits. When you complete a habit, Blob Buddy gets happy and celebrates with you. As you make progress, you earn XP and coins, level up, and unlock new possibilities for your character.
The goal isn't perfection. It's making small, positive actions feel rewarding.
What We Built
Blob Buddy is a habit companion focused on four simple daily actions:
- 🪥 Brush your teeth
- 💧 Drink water
- 🏃 Move your body
- 📱 Take a cellphone pause
Completing habits gives the user XP and coins. Blob Buddy reacts with different emotions and animations depending on what the user does.
The MVP includes:
- Account creation and authentication
- Daily habit tracking
- XP and level progression
- Coins and a small shop
- Streak and progress tracking
- Character emotions and habit-specific reactions
- Persistent cloud-based progress
- Responsive mobile-first interface
We intentionally kept the first version focused. Rather than building a large social platform immediately, we wanted to first make the core loop feel good:
Habit → Character reaction → Reward → Progress → Motivation to return**
How We Built It
We built the application using React 19 with TanStack Start, TanStack Router, TanStack Query, Tailwind CSS, and shadcn/ui.
For authentication and persistent data, we used Lovable Cloud.
The backend uses a relational database with Row Level Security (RLS). User progress, habits, and completions are stored in separate tables, and streaks are calculated from completion history rather than being stored as a potentially inconsistent number.
One of the most important technical decisions was making rewards server-authoritative.
When a user completes a habit, the client doesn't decide how much XP or currency they receive. Instead, a secure database function handles the completion atomically, checks the predefined reward values, records the completion, and updates the user's XP, coins, and level.
This prevents users from simply modifying the frontend and giving themselves unlimited XP.
We also created a reusable character system. Instead of having individual screens reference image files directly, the UI uses a component such as:
<BlobBuddy state="happy" />
This means we can replace or improve the character artwork later without having to redesign the application.
What We Learned
One of our biggest lessons was that good gamification isn't just about adding points.
XP, coins, levels, and streaks are useful, but they become much more meaningful when they're connected to something emotional. Blob Buddy's reactions make the user's actions feel visible.
We also learned how important it is to separate the UI from business logic. Keeping reward calculations, authentication, database operations, and character state management outside individual screens made the project much easier to reason about and extend.
Finally, we learned that an MVP doesn't need to contain every feature we can imagine. We originally envisioned a much larger social experience, but focusing on the core habit → character → reward loop allowed us to build something more coherent.
Challenges
One of our biggest challenges was designing a character system that felt expressive without becoming unnecessarily complicated.
We wanted Blob Buddy to feel like a companion rather than just an animated icon. We solved this by creating a small set of meaningful states — such as calm, happy, excited, sleepy, and missing-you — combined with habit-specific reactions.
Another challenge was making sure gamification couldn't easily be manipulated on the client side. Because XP and coins are central to progression, we had to think about security from the beginning. Server-side reward calculation and database permissions allowed us to keep the client responsible for presentation while the backend remained the source of truth.
We also had to balance ambition with scope. Features such as friends, social feeds, and more advanced customization are part of the long-term vision, but we deliberately left them out of the first version.
What's Next
Blob Buddy is designed to grow beyond a simple habit tracker.
Future versions could introduce friends, social challenges, more character customization, achievements, and richer interactions between users and their buddies.
But the foundation remains simple:
Build healthy habits. Grow your buddy.
We want Blob Buddy to make small everyday improvements feel a little more fun, personal, and rewarding.
Built With
- authentication
- gamification
- react
- shadcn/ui
- tanstack
- typescript
Log in or sign up for Devpost to join the conversation.