I Built a Free AI-Powered Fitness Tracking App Using AI as a BCA Student π
Hey DEV Community! π
I'm Mahesh, a second-year BCA student from Chennai, India. Today, I want to share a project I've been working on: MY CAL AI β a free, AI-powered fitness tracking app that I originally built for myself.
This project started with a simple problem: I wanted to track my food, calories, macros, workouts, and fitness progress, but many fitness apps locked useful features behind expensive subscriptions.
Since I enjoy programming and exploring AI, I thought:
"Why not build my own fitness app with AI?"
And that's how this journey began.
π‘ How It Started
Initially, I experimented with three different AI tools to help me build the application. I really liked what Hugging Face Chat generated, but I eventually hit its usage limit.
I downloaded the project files, opened them in VS Code, and continued working on the application using my free GitHub Copilot credits.
I started customizing the project to match my personal fitness needs. I wanted more than just a calorie counter β I wanted one place to track almost everything related to my fitness journey.
That's when I decided to integrate AI into the application.
π€ Bringing AI Into My Fitness App
I integrated the Gemini API to estimate calories and macronutrients from meal images or descriptions.
Instead of manually searching for every food item, users can describe or scan a meal and receive an AI-generated nutritional estimate.
I also gradually implemented other features that I wanted in my daily fitness routine.
Once the web version was working, I wanted to take things further. I had never converted a website into an Android app before, so I installed Android Studio and used AI assistance to help with the Android integration and synchronization.
After resolving the setup issues, I tested the application on my own phone β and it worked!
That was one of the most exciting moments of this project.
πͺ What Is MY CAL AI?
MY CAL AI is a fitness tracking application designed to bring several everyday fitness tools together in one place.
Here are some of its main features:
- AI-powered calorie and macro estimation: Scan or describe meals to estimate calories, protein, carbohydrates, fats, and other nutritional information.
- Step tracking: Access supported step data through Google Health Connect.
- Workout tracking: Record workouts and keep track of training progress.
- Weight and progress tracking: Monitor changes over time.
- Water intake tracking: Log daily water consumption.
- AI fitness coach: Get AI-generated fitness guidance.
- Offline functionality: Most core features work offline, while AI-powered features require an internet connection.
- Data privacy: Fitness data is stored locally rather than collected by a personal backend server.
- JSON import and export: Back up or transfer your fitness data through the Settings page.
The goal is simple: make useful fitness tracking tools accessible without requiring an expensive app subscription.
π How to Use the AI Features
The app itself is free. To use the AI-powered features, you need a Gemini API key.
- Get an API key through Google AI Studio.
- Open MY CAL AI and navigate to Settings.
- Enter your API key and save it.
- Test the connection and start using the AI features.
AI usage is subject to Google's available API quotas, pricing policies, and terms. The app does not require a paid fitness subscription, but API access and usage are governed separately.
π οΈ How I Built It
One interesting thing about this project is that AI played a major role in writing the code.
I'm still learning software development, so I used AI tools to generate code, troubleshoot errors, make changes, and help me understand how to move from a web project to an Android application.
My workflow looked roughly like this:
- Idea and requirements: Identified the fitness features I wanted to use personally.
- AI-assisted development: Used AI coding tools to generate and modify the application.
- Customization: Adapted the generated code to my requirements.
- API integration: Connected Gemini for AI-based nutritional estimation and fitness assistance.
- Android integration: Used Android Studio and AI assistance to get the application running on my phone.
- Testing and iteration: Tested features, identified issues, and continued improving the app.
I want to be transparent: I didn't independently write every line of code. AI helped with a substantial part of the implementation.
However, I still had to decide what to build, write prompts, test the output, troubleshoot problems, and iterate until the application worked for my needs.
This experience taught me that building a project is not only about writing code from scratch. Understanding requirements, evaluating generated code, testing functionality, and improving the result are also important parts of development.
At the same time, I know there is much more to learn about code quality, security, architecture, and maintainability. That's one reason I'm sharing this project with other developers.
π A Note on Privacy
I designed the app to store fitness data locally, without a personal backend server collecting that information.
However, AI features require network requests to Google's Gemini API. Those requests may contain meal images, meal descriptions, or other information needed to generate a response. Google's API data-handling policies apply, so please review them before using the AI features.
I'm continuing to learn how to make the application more reliable, secure, and privacy-conscious.
π What I Learned From This Project
This project has been a valuable learning experience for me.
Some of the things I've explored include:
- Building and customizing a real application with AI coding assistants.
- Integrating an external AI API into a project.
- Managing API keys and application settings.
- Working with VS Code, GitHub, and Android Studio.
- Debugging generated code and testing functionality.
- Learning how a web application can be packaged for Android.
- Turning a personal problem into a project that other people might find useful.
Most importantly, it gave me the confidence to experiment with an idea that initially seemed beyond my current skill level.
π Try MY CAL AI
The app is available as an Android APK through GitHub.
π± Download the APK:
https://github.com/mahesh-2007/Cal/releases/tag/v1.0.0
π My portfolio:
https://dev-mahesh-portfolio.web.app/
I'd love for you to try the app and share your thoughts.
If you encounter a bug, have a feature suggestion, or notice something that could be improved, please leave a comment. Constructive criticism is especially welcome.
I'd also appreciate feedback from experienced developers on the architecture, security, code quality, and overall user experience.
π¨βπ» A Little About Me
I'm Mahesh, a second-year BCA student from Chennai, India.
I started programming in Class 10, and I'm currently exploring AI engineering while preparing for campus placements.
I'm still at the beginning of my journey, and I built this project to solve a personal problem while learning how AI can help turn ideas into working applications.
I'm not claiming to be an expert. I'm simply sharing something I've built, what I learned along the way, and what I'd like to improve next.
If you're a developer, AI engineer, student, or someone who enjoys building projects, I'd love to connect and learn from your experience.
A few questions for the DEV community:
- What would you improve first in this application?
- What should I learn next to become better at building AI-powered applications?
- Have you used AI coding assistants to build a project? What did you learn from the experience?
Thank you for reading! β€οΈ
I'm excited to hear your feedback and continue improving MY CAL AI.
Top comments (1)
Nice work building this for yourself. Since it calls an AI model, check where the API key is stored. If it is in the front end code, anyone can copy it and use up your credits. Move the call to a small server function and add a daily limit per user. Also check that food and workout logs are only readable by the user who made them.