Better Self - AI Coach
Inspiration
I wanted to build something that feels like having a real coach in your pocket. Not a chatbot that answers questions, but distinct coaching personalities you can build a relationship with over time. Something clean, modern, and simple enough for a basic user with more features for advanced users to dive into.
What it does
Better Self gives you instant access to AI coaches with distinct personalities and approaches, like:
- Marcus (The Stoic) — Emotional resilience and perspective
- Jordan (The Accountability Partner) — Direct check-ins and follow-through
- Sofia (The Socratic Guide) — Questions that unlock self-discovery
Each coach remembers your conversation history and provides session summaries with action items.
Session-Based Coaching
Unlike open-ended chat, Better Self uses a structured session model that mirrors real coaching:
Natural session flow — Coaches guide conversations toward actionable outcomes rather than endless back-and-forth. When a session reaches a natural conclusion, the coach suggests wrapping up. Session summaries — At the end of each session, the app generates a summary including:
- Key insights from the conversation
- Action items to track
- Open questions to explore next time
- Optional "breakthrough moment" the user can save
Contextual continuity — Session summaries are fed into future sessions, allowing coaches to reference past conversations. A coach might say "Last time you mentioned struggling with delegation — how's that going?" This creates relationship continuity without requiring the AI to have persistent memory. Follow-up reminders — Users can set reminders (24 hours, 3 days, 1 week) to check back in, encouraging accountability and consistent engagement.
This session structure makes each conversation feel purposeful and creates a sense of progress over time.
How I built it
- Frontend: Expo / React Native
- Backend: Cloudflare Workers for API endpoints
- Database: Supabase (Postgres)
- AI: Openrouter API
- Payments: RevenueCat
The coach personalities are driven by detailed system prompts that define their philosophy, communication style, coaching frameworks, and guardrails.
Challenges I ran into
Making coaches feel different: Early versions had coaches that all sounded the same. It took significant iteration on the system prompts — adding specific coaching moves, example prompts, and personality guardrails — to make each coach feel genuinely different.
Balancing simplicity with depth: The target audience loves building systems, but the app needed to be instantly usable. Finding the right balance between powerful features and a clean, minimal interface was an ongoing challenge.
Session state management: Handling optimistic updates, message streaming, and session completion states required careful architecture to keep the UI responsive while staying in sync with the backend.
Accomplishments that I'm proud of
Coaches that actually feel different: Each coach has a unique voice and approach that users notice immediately.
Clean, calm UI: The design feels premium and focused.
End-to-end in 4 weeks: From idea to working app and api with subscriptions, multiple coaches all within the hackathon timeline.
What I learned
System prompt design is an art. Small changes in wording dramatically affect how the AI behaves. Detailed frameworks and examples work better than abstract instructions.
One month goes fast. I had to cut some planned features and UI/UX improvements near the end to make sure I had time to properly test and bug fix.
What's next for Better Self - AI Coach
- Custom coaches: Users can create their own custom coaches in their own style.
- Session types: Structured formats like Morning Intentions, Weekly Review, and Decision Helper
- Voice: Talk to your coach instead of typing
- Widgets: iOS home screen widget for quick session starts
Built With
- cloudflare
- expo.io
- hono
- postgresql
- react-native
- supabase
- workers
Log in or sign up for Devpost to join the conversation.