I made an app 😜
— Comments — life, tinker, tech, software, apps — 5 min read
What do you get when you mix a software engineer (husband) with a night-shift-working respiratory therapist (wife) -- who can't find a calorie tracker that fits their needs?
Another calorie tracker app, of course!
Most, if not all, apps out there today have a fixed "breakfast-lunch-dinner-snack" meal structure. This doesn't work for people who work non-traditional hours, like my wife. So I set out to build an app that allows users to define their own meal structure. This app has a timeline of feedings and no arbitrary buckets. You can set when your day transitions, and add feedings wherever you want along that timeline. No having to fit into a pre-defined mold. Do you eat "lunch" at 2 am? No problem! You don't have to worry about what slot to log your meal into -- log it whenever it fits on your timeline.
I also use this app to track my own food intake as well, and I love the flexibility it provides. My goals are not to lose weight, but to grow muscle mass, so I need to make sure my protein and carbs are high enough and balanced with my energy expenditure. This app helps me do that.
I also wanted an excuse to play with some new ideas, so I built this with Expo and react-native for the front-end and Firebase for the backend. It's been a fun experience so far, and I am pleased with how it's progressing. Here are some technical details and screenshots of the app.
- Built with React-Native on Expo
- Uses TypeScript throughout
- Serverless Backend with Firebase (Authentication, Firestore, Storage, Remote-Config, Functions)
- Can be deployed to iOS and Android app stores (currently only on TestFlight for my wife and me to use)
- Expo-Router / TanStack Query to manage state
- NativeWind / Tailwind layout & style engine
- Gluestack UI components
- Food data is sourced from the USDA FoodData Central database and the Nutritionix API.
What does this app do? (besides the opening premise? 😉) Well, I'm glad you asked! 😁
Searching and logging foods is easy with a comprehensive food database, barcode scanner, nutrition-label scanner, and the ability to save bespoke foods and recipes. You can set daily calorie and macro-nutrient goals, and track your progress with detailed stats and visualizations. It syncs with Health to read active calories and weight/body-fat-percentage. There is a calendar view to see your history. You can take progress photos for comparisons over time. You can join other users to share recipes and foods. There are a lot of features packed in! However, I'm still adding and refining features all the time.
This is a full-fledged app that my wife and I are actively using. I can't afford to open it to the public, but if there is enough interest, I may consider it. Feel free to reach out if you'd like to know more or see a demo!
Footnotes
-
Social features are designed for me and my wife to share foods and recipes, but could be expanded to a wider audience in the future. The current implementation is basic and far from what I would include in a production app with many users. The user-discoverability is obviously too permissive for a public app. ↩