Inspiration Our team was inspired by the growing disconnect between people's desire to live sustainably and their uncertainty about how to do so effectively. We noticed three key problems:
- Confusion about waste sorting
- Difficulty tracking sustainable habits
- Lack of motivation
What it does EcoVision Tracker is a comprehensive sustainability companion app with four core features:
- AI Trash Scanner: Upload photos of waste items for instant AI classification (recycle, compost, or landfill) with educational tips and "Buds" rewards
- Eco Actions Tracker: Log daily sustainable actions like using reusable containers or taking public transit
- EcoWallet: Earn "Buds" (eco-currency) for sustainable actions and redeem them for badges, merchandise, or donations
- AI Chatbot: Get instant answers to sustainability questions, receive tips on eco-friendly living, and learn how to get the most out of EcoVision's features.
How we built it We built EcoVision using a modern tech stack:
- Frontend: React with TypeScript, Vite, and Tailwind CSS for a responsive, intuitive UI
- Backend: Flask API with Google's Gemini AI integration for image classification
- Database: Supabase (PostgreSQL) for user data, actions, and transactions
- Authentication: Clerk for secure user management
- State Management: React Query for efficient data fetching
- UI Components: shadcn/ui and Radix UI primitives for accessible, beautiful components
The trash scanner was our most technically challenging feature, using Google's Gemini AI to analyze images and provide accurate waste classification with educational context.
Challenges we ran into
- AI Integration: Configuring the Gemini API for accurate waste classification required extensive testing and prompt engineering
- Database Schema Design: Creating a flexible yet efficient schema for tracking diverse eco actions and rewards
- CORS Issues: Resolving cross-origin resource sharing problems between our frontend and backend
- Deployment Complexity: Ensuring our Flask backend worked correctly in production environments
- Transaction Consistency: Maintaining consistency between user stats and transaction history in the database
Accomplishments that we're proud of
- Creating an AI-powered waste classification system that's both accurate and educational
- Designing a gamified reward system that makes sustainability engaging and motivating
- Building a clean UI that makes complex sustainability concepts accessible
- Implementing a backend that handles diverse data types and user interactions
- Successfully integrating multiple technologies into a cohesive application
What we learned
- AI Integration: How to effectively use generative AI for image classification and educational content
- Full-Stack Development: Coordinating frontend and backend development for a seamless user experience
- Database Design: Creating efficient schemas for complex, interrelated data
- User Experience: Designing interfaces that make sustainability accessible and engaging
- Deployment: Configuring applications for production environments
What's next for EcoVision Tracker EcoVision is committed to scaling its platform and impact. In the future, we would want to introduce community features to foster collaboration, integrate with local recycling programs, provide advanced analytics on environmental impact, and launch mobile apps for accessibility. We will also enhance our AI with more waste data and regional recycling details.
Built With
- api
- clerk
- flask
- gemini
- postgresql
- python
- react
- render
- shadcn/ui
- supabase
- tailwind
- typescript
- vercel
- vite
Log in or sign up for Devpost to join the conversation.