-
-
Quick Log, walks, the health record and Dana AI in one app, for every dog and cat in the house.
-
Share a pet with family or a sitter. Every log carries a name and a time, so the care team sees who did what.
-
Home: what's due today, then one-tap Quick Log. With more than one pet, hold a tile to log for several at once.
-
Vaccines with due dates, medications and weight history, kept per pet for you and your vet.
-
Dana AI asks what you noticed and sorts it into Monitor at home, Call vet today or Emergency now.
-
One Care Streak across all your pets, with automatic Streak Freezes, Away Mode and medals.
-
All your pets side by side, each with its own routine: a litter routine for cats, walks for dogs.
-
Health Vault: scan or import vet documents, then share them with the clinic.
-
GPS walks for one dog or several, with logs pinned on the route and a summary card to share.
-
Assign a task to one or more people, or leave it open to anyone on the care team.
-
App icon, 1024 x 1024.
-
Care timeline, no device frame: every log and task, each with the person who did it.
-
Caregivers, no device frame: three people on one pet, and you choose each one's access level.
-
Health Vault, no device frame: scan a document, import a PDF, ask Dana AI or share with the vet.
Why I built Dana
When you care for a pet, you're responsible for a life. On your own there's a lot to remember. Even when family, a partner or a sitter helps, you're usually the one asked whether the medication was given or where the vet's records are.
I built Dana so that job is easier to keep track of and easier to share. Daily care, health records and Dana AI sit together around each pet. It's for dogs and cats, in 13 languages, on the App Store and Google Play.
What Dana does
The app uses warm orange accents, custom icons, dimensional illustrations and a mascot throughout. Home puts what needs attention first, with Quick Log and the pet switcher close by.
Sharing care
You can assign a task to a caregiver or leave it open to anyone on the care team. Invites come with different access roles, and a sitter's access can end on a date you pick.
The Care timeline shows what was logged, when and by whom, and there's a calendar view for looking back across days. You get a notification when someone else logs care or finishes a task. At the end of each month there's a report with the care that was done, the walks, weight changes and who did what.
Logging
Quick Log records a meal, water, a bathroom break, grooming and more in one tap. You can undo a wrong tap, or press and hold a tile to log for several pets at once. A log that matches a due task can complete it and cancel its reminder. Task presets make setup quicker, and quiet hours keep reminders from turning into noise.
The pet switcher on Home keeps each pet's routine in reach. Cats get litter care. Dogs get GPS walks, with anything you log on the way pinned to the route, and one walk can include several dogs. It ends with a summary of the route, the stats and which pets came along.
Health records
Health keeps vaccines and preventatives, medications, weight trends, the vet's contact details and the microchip number together for each pet. You can scan a medication label to fill in the form, then check the details before saving.
The Records Vault holds scanned documents and PDFs, like lab results, certificates and insurance papers. You can send one to your vet as a private link that expires.
Dana AI
Dana AI uses what you've saved about the pet and its recent care when it answers. There are three ways in:
- Just ask for everyday care questions, with follow-ups.
- I'm worried tells you how urgent something is (Emergency now, Call vet today or Monitor at home) and what to do next.
- Can they eat this? is the Food Scanner. Take a photo of a food, a treat or an ingredients label and get a separate answer for each of the pets you choose.
The symptom check says so when it isn't sure, and it sends you to a vet when that's needed. It doesn't replace one. Symptom checks and food scans show up in the timeline so other caregivers can see them, and an urgent result can offer a call to the pet's saved vet.
Streaks, medals and widgets
Care Streak counts consistency across all your pets. Each milestone unlocks its own medal, with an illustration of the mascot and an animated celebration, and a broken streak doesn't take back earned medals. Streak Freezes cover a missed day automatically while you have them, and Away Mode pauses the streak while you travel. A pet with two active caregivers also gets a care-team streak.
Widgets on iOS and Android show streak progress, the next task, recent care and upcoming vaccinations without opening the app. Supported iPhones also get lock-screen widgets and a streak Live Activity, in the same style at a smaller size.
How I built it
I'm the only developer. The app is React Native and Expo for iOS and Android, with Expo Router, NativeWind and native widgets.
The backend is Go and Fiber on PostgreSQL and Redis, split into modules, and every database change ships as a versioned migration. Documents go to S3-compatible object storage. AI requests go through the Go API to an internal Python/FastAPI service, so no model credentials ship in the app. PostHog handles analytics and error tracking.
RevenueCat runs the monthly and annual Dana Pro subscriptions. The backend verifies the webhooks, keeps entitlement state in PostgreSQL and checks Pro access on the server.
What was hard
Shared care makes permissions the main problem. A caregiver needs enough access to help, and nothing beyond the role the owner gave them. A CI gate ties the authorization policy to tests for both allowed and denied access.
There's no local write queue, so updates are optimistic, roll back when the network fails, and offer a retry. The app has to show that an action failed, so another caregiver doesn't rely on an update the server never accepted.
Dates took more work than I expected. A vaccine due date is a calendar day, while a logged meal happens at a specific moment. Treat both as timestamps and a due date can move by a day across time zones. I gave each kind of time value one declared format and added checks that fail on an undeclared time field.
What I learned
The date work showed me that tests can pass while the product is wrong, when the code and the tests share the same bad assumption. I had to decide what a value meant before I could check how it was stored or displayed.
Free and Pro
Daily care logging, health records and caregiver sharing are free, and free accounts get a limited number of Dana AI checks and food scans.
Dana Pro adds Records Vault uploads, a bigger AI allowance, photos in symptom checks, fuller symptom-check guidance with follow-up questions, and more Streak Freezes. Eligible store accounts can start a free trial. How judges can get access, and where the Google Play trial is open, is in Additional info.
Dana is entered for the RevenueCat Design Award, the RevenueCat Peace Prize and #BuildInPublic, and each has its own notes in Additional info.
Built With
- docker
- expo-router
- expo.io
- fastapi
- fiber
- go
- nativewind
- postgresql
- posthog
- python
- react-native
- redis
- revenuecat
- s3
- sqlc
- tanstack-query
- typescript
- widgetkit
- zustand


Log in or sign up for Devpost to join the conversation.