Inspiration
We’re a group of computer science undergraduate students united by a shared passion for open source and all things tech. Our story started with a simple YouTube video on a “Top API Every Developer Should Know About,” which sparked an idea: Why not create something that could truly benefit the community? This idea quickly grew into a project fueled by our enthusiasm for experimenting, building, and solving real-world problems.
We decided to make our project open-source because we believe in the power of collaboration and giving back to the developer community. Our goal is to create something meaningful that has a positive impact on a large scale. As we continue to develop and refine our work, we’re excited about the possibilities ahead. We’re just getting started, and we can’t wait to see how far we can go, pushing boundaries and innovating every step of the way :)
What It Does
Our app is a cross-platform solution that supports barcode scanning for foods, drinks, cosmetics, medicines, and pet foods. It provides users with detailed ingredient information, categorizes nutrients into positive and negative (either generally or based on user health data), identifies potential health risks, and recommends healthier alternatives using an AI engine.
Key Features:
- Barcode Scan: Scan products to access nutritional information.
- Search Engine: Find products by name, image, or live recognition.
- Meal Tracker: Track daily nutritional intake.
- Coin-based Marketplace: Purchase healthier alternatives from trusted partners.
- Browser Extension: Integrate app features for online shopping.
- Recipe Chatbot: Get personalized recipe suggestions.
- Account Activity: View scan history, searches, and payments.
How We Built It
- Barcode Scan: We used the
zxing_flutterlibrary to capture barcode input, which is then sent to the Django server for processing. - Text Search: The app accepts text input for product lookup, which queries the Firestore database for product information.
- Django Server: Handles user authentication, data processing, and integrates with the Gemini API and Google Firebase services.
- OpenFoodFacts API: Retrieves detailed product data (ingredients, nutritional info, etc.) based on barcode or product name.
- Gemini API: Analyzes nutritional data, categorizing nutrients, identifying health risks, and suggesting alternatives.
- Firestore Database: Stores processed product data for fast lookups by the app or browser extension.
- Flutter App: The mobile app provides barcode scanning, meal tracking, recipe recommendations, and marketplace integration.
- Browser Extension: Extends app features to allow product lookups while shopping online.
Challenges We Ran Into
- Chrome Extension Development: Building a Chrome extension for the first time required learning about workers, content scripts, popups, and manipulating the DOM.
- Building AI Systems: Creating AI systems to personalize health data and provide tailored alerts and recommendations based on user input was a complex challenge.
- Search Without Barcode: We had to ensure product searches worked even when the barcode wasn't available. We stored barcode info from OpenFoodFacts and used product names for database searches in Firestore.
- Regional Data Filtering: OpenFoodFacts is a global database, so we had to apply filters to ensure we provide the best and latest product data, specifically for the Indian market.
- Offline Functionality: Implementing offline barcode scanning required careful handling of data retrieval and storage on mobile devices.
Accomplishments We Are Proud Of
- User-Centric Health Impact: The app empowers users to make better health decisions by providing detailed nutritional data and personalized recommendations.
- Cross-Platform Integration: We successfully integrated mobile and web platforms, ensuring a seamless experience across different devices.
- Open-Source Contribution: By making the project open-source, we’re enabling the community to collaborate, extend, and benefit from the app.
What We Learned
Working on this project has taught us about the complexity of consumer product data and the importance of transparency in food, health, and personal care. It made us more conscious about the ingredients in the products we consume. This project also deepened our understanding of backend systems, APIs, and mobile development, especially in integrating real-time data.
What’s Next
After perfecting our core food and drink scanning features, we plan to expand to:
- OpenBeautyFacts for cosmetics
- OpenPetFoodFacts for pet food
- OpenFDA API for medicines
These will broaden the scope of our platform, but we’re committed to making sure the food and drink aspects are fully functional first.
Built With
- django
- firebase
- flutter
- gemini-api
- google-cloud
- manifest-v3
- openfoodfacts-api
Log in or sign up for Devpost to join the conversation.