-
-
Hero screen — AI assistant greets the user and offers “Start Assessment” or sign-in.
-
Chat & navigation — profile drawer, WhatsApp-style chat, and one-tap progress panel.
-
12-question onboarding quiz captures metrics, goals, allergies, and age for personalisation.
-
Core flow — photo analysis returns calories/macros and updates the goal dashboard in seconds.
Inspiration
Many nutrition buffs still pay human coaches in WhatsApp chats:
snap a meal photo → wait hours → get macros and costly advice.
I’d done it myself (and so had my friends) until the bill hurt.
So I asked: “What if AI could answer instantly, for almost zero cost?”
That pain point sparked ZOVO.life — a WhatsApp-style chat where
an AI coach delivers real-time calorie tracking and personalised guidance.
What it does
- Chat like WhatsApp — I type or drop a meal photo.
- Instant analysis — GPT-4o Vision estimates calories & macros.
- Personal coaching — The AI factors a 12-question onboarding quiz and my meal history to send tailored tips for the day.
- Progress dashboard — I see daily / weekly macro targets and streaks.
Result: the value of a human coach, 24 / 7, with zero overwhelm.
How I built it
| Layer | Stack & Tools |
|---|---|
| Code scaffold | Bolt.new one-click template → Expo / React Native |
| Front-end | Expo Router, TypeScript, NativeWind (Tailwind-like) |
| Back-end | Supabase (Postgres, Auth, Edge Functions, Storage) |
| AI layer | OpenAI GPT-4o Vision endpoint for meal photos |
| Hosting | Netlify for the web build (https://zovo.life) |
| Resend for password reset & onboarding drip | |
| DevOps | GitHub Actions → Netlify CI/CD, Supabase migrations |
Challenges I ran into
- Zero dev background. My last coding was 15 years ago (plain HTML/CSS). React Native, Supabase—even Git—were all brand-new.
- Five complete restarts. I deleted the repo and re-scaffolded Bolt.new five times because things kept breaking faster than I could fix them.
- Architecture fog. Screens, services, Edge Functions—everything was a black box; I peppered Bolt with hundreds of micro-questions to inch forward.
- Web build nightmare. Mobile ran in Expo Go, but the browser build refused to load image-upload functions; hours of CORS-header detective work finally solved it.
Accomplishments I’m proud of
- Working full-stack MVP in a handful of late-night sessions, from blank screen to live site at zovo.life.
- Solved every blocker solo, using Bolt for ~95 % of prompts and a pinch of ChatGPT near the end.
- First real users—friends who used to pay human WhatsApp coaches—now log meals in ZOVO instead and love the instant feedback.
What I learned
- Clear Bolt prompts = speed. Short, precise requests beat hours on forums.
- Modern stack mental model. Expo ➜ Router ➜ React components ➜ Supabase Edge ➜ Netlify CDN finally “clicked.”
- Guardrails matter. Pre-deploy env checks and strict TypeScript types save days of silent failure.
- Biggest insight: if a marketing guy can ship AI photo analysis in React Native, thousands of non-coders can build their ideas too.
What's next for ZOVO.life
- Release on App Store / Play Store with a RevenueCat paywall.
- Sync with Apple Health & Google Fit for passive data import.
- Add group challenges and streak badges to boost retention and community.
Built With
- bolt.new
- expo-router
- expo.io
- github-actions
- nativewind-(tailwind-css)
- netlify
- openai-gpt-4o-vision-api
- postgresql
- react-native
- resend
- supabase
- supabase-edge-functions
- supabase-storage
- typescript
Log in or sign up for Devpost to join the conversation.