-
-
Log last night's rest by tucking the hours into a cozy cat bed. Even data entry stays cute.
-
After a long phone inactive gap, Pawsitive detect you could be sleeping. Accept or adjust.
-
Been away a while? A caring doctor-cat checks in: "Everything okay?" Proactive, not passive.
-
Meet Dr. Whiskers, the AI wellness assistant — general lifestyle tips only, never a diagnosis.
-
Log meals and browse "Purrfect Picks" — AI food suggestions for whatever nutrient you're low on today.
-
Chat with Dr. Whiskers about sleep, activity, or food. Every reply is guardrailed and safe.
-
Tap a doctor to chat, or find nearby pharmacies sorted by distance on a mini-map.
-
A doctor consultation that ends in a digital prescription and bill, right inside the chat.
-
Order prescribed medicine from the nearest apotek: pick items, see the bill, check out.
-
Your cat thrives when you do: green bars for nutrition, exercise, and sleep, with today's AI quests up top.
-
Your mascot's look shifts with your health — healthy, normal, or unwell. Wellbeing you can actually see.
-
A steady day — a content cat and mid-range bars. Finish today's quests to climb back into the green.
-
Your profile — edit the details that power the AI's personalized health predictions.
-
Slip on your habits and the cat gets sick: red bars and a 10-year risk warning nudge you to act early.
-
The walk tracker set in a sunny park. Start walking and watch your steps, time, and calories climb.
Inspiration
We kept noticing the same thing about health apps: they're great at showing you numbers but bad at making you care. Meanwhile, everyone we knew had, at some point, obsessively kept a Tamagotchi or POU pet alive. So we asked — what if the thing you were keeping alive was a reflection of you? Pawsitive turns your daily habits into a cat whose wellbeing mirrors your own. Eat well, move, and sleep, and your cat thrives. Neglect them, and the cat gets sick — a gentle nudge to change course before you actually do. Our goal was prevention through awareness, not another dashboard of guilt-inducing charts.
What it does
Pawsitive is a gamified mobile health companion. You track three pillars — nutrition, exercise, and sleep — and a cat mascot visualizes your overall state as healthy, normal, or at risk.
- An AI recommender reads your recent habits and outputs your health status, the single weakest area, and a plain-language reason — plus an illustrative 10-year disease-risk outlook (probability, likely condition, and a low/medium/high tier).
- Daily quests are generated from your stats and auto-check themselves from real logged data (e.g. "Walk 5,000 steps").
- Dr. Whiskers, a guardrailed AI chatbot, gives lifestyle-only advice, never diagnoses, and routes serious symptoms to a real professional.
- A doctor consultation flow ends in a digital prescription and bill you can order from the nearest pharmacy, tying wellness, telehealth, and e-pharmacy into one loop.
How we built it
The frontend is Expo (React Native) + TypeScript; the backend is Python FastAPI. The recommender is a scikit-learn RandomForest, and the chatbot is a guardrailed LLM behind our API. Local state lives in AsyncStorage.
Because no public dataset maps habits → health status, we generated a synthetic dataset from clinical guidelines and trained on it. Daily energy needs use the Mifflin–St Jeor equation, where (w) is weight (kg), (h) is height (cm), (a) is age, and (s = +5) for males or (-161) for females:
$$ \text{TDEE} = (10w + 6.25h - 5a + s)\times 1.4 $$
Walking calories use the standard MET formula:
$$ \text{kcal/min} = \frac{\text{MET}\times 3.5 \times w}{200} $$
Nutrition is a time-prorated composite so a small breakfast isn't punished and the score decays as the day goes on without eating:
$$ \text{nutrition} = 0.5\,S_{\text{cal}} + 0.3\,S_{\text{protein}} + 0.2\,S_{\text{fiber}} $$
Each (S) is a (0)–(1) adequacy score. The calorie score is
$$ S_{\text{cal}} = 1 - \frac{\max(0,\ |r| - 0.1)}{0.4} $$
where (r) is how far your intake sits from your time-adjusted target — anything within (10\%) scores a perfect (1.0).
A key design principle: status comes from the ML model, but the reason comes from deterministic rules — so every prediction is explainable and defensible.
Challenges we ran into
- No ground-truth data. We couldn't train on real "healthy/sick" labels, so we encoded guidelines into a synthetic dataset — and had to be honest that the predictions are illustrative, not clinical.
- Expo Go quirks.
expo-notificationswas removed from Expo Go and crashed the whole bundle on import; thePedometerwas unreliable on Android; and the keyboard covered the chat input. Each needed a targeted fix (lazy gated imports, a step-estimate fallback, and a full-screenKeyboardAvoidingView). - Dirty data. The food database had corrupted placeholder rows (
112, 113, 114, ...), so we added a physical-plausibility filter — a macro's energy can't exceed the food's total calories. - Bad scoring edge cases. Our first sleep curve scored 12 hours as instantly unhealthy; we replaced it with an asymmetric, medically-grounded mapping where oversleeping is penalized gently and undersleeping steeply.
- Demoing time-based features. Sleep and inactivity prompts can't wait real hours, so we built demo triggers to fire them on command.
Accomplishments that we're proud of
A fully working end-to-end MVP: a real ML recommender, an explainable "why," a safety-first chatbot, and a complete doctor → prescription → pharmacy journey — all wrapped in a cohesive, genuinely cute cat aesthetic (park scenes, toe-bean bars, yarn-ball stats, cat-bed inputs). Most of all, we kept the health framing honest: no fake clinical numbers, always a disclaimer, always a path to a real professional.
What we learned
The biggest lesson was to match your ML ambition to the data you actually have — and when the data doesn't exist, to be transparent about what's real versus simulated. We also learned how much of "AI product" work is really guardrails and UX: an explainable model and a well-behaved chatbot matter more than raw accuracy. And we got very familiar with the sharp edges of shipping React Native fast.
What's next for Pawsitive
- Real device sensors (true step and sleep tracking) and OS notifications via a development build.
- Genuine integrations: telemedicine, e-pharmacy checkout, and a live map.
- Richer nutrition using a full micronutrient database, and a localized Indonesian food catalog.
- Personalization that adapts targets and the model to each user over time.
Built With
- anthropic
- async-storage
- expo-location
- expo-router
- expo-sensors
- expo.io
- fastapi
- javascript
- llm
- machine-learning
- node.js
- numpy
- pandas
- python
- random-forest
- react-native
- rest-api
- scikit-learn
- typescript
- uvicorn
Log in or sign up for Devpost to join the conversation.