Ecofriend.ly is an AI-powered app that identifies waste, reports it to authorities, and gamifies cleanup with points and leaderboards—making it fun and easy to create cleaner, greener communities!
Explore the docs »
View Demo
Table of Contents
Ecofriend.ly is a mobile application built with React Native, Nativewind, Firebase, and Gemini AI, designed to empower communities to tackle waste management through technology and gamification. Developed by a team of passionate developers during a hackathon, the app offers an innovative, engaging, and impactful approach to keeping urban areas clean.
✨ Key Features
- 🔍 AI-Powered Waste Detection: Utilizes the Gemini AI model to scan and identify waste types, calculate environmental impact, and ensure accurate data collection for actionable insights.
- 📍 Interactive Trash Map: Integrates the Google Maps API to display pinned locations of reported waste, enabling users and authorities to identify high-priority areas.
- 📧 Automated Reporting: Streamlines communication with local authorities by automatically drafting and sending emails containing waste details and location information using EmailJS.
- 🎮 Gamification: Encourages user participation with a points and leaderboard system, making the process of reporting waste fun and competitive.
With its cutting-edge features and community-focused approach, Ecofriend.ly motivates users to contribute to cleaner, greener environments while fostering collaboration and awareness in waste management.
React Native
Nativewind (Tailwind for React Native)
Firebase Auth & Firestore DB
Gemini AI
Google Maps API
EmailJS
To get a local copy up and running follow these simple steps.
This is an Expo project created with create-expo-app.
-
Install dependencies
npm install
-
Start the app
npx expo start
In the output, you'll find options to open the app in a
- development build
- Android emulator
- iOS simulator
- Expo Go, a limited sandbox for trying out app development with Expo
You can start developing by editing the files inside the app directory. This project uses file-based routing.
To learn more about developing your project with Expo, look at the following resources:
- Expo documentation: Learn fundamentals, or go into advanced topics with our guides.
- Learn Expo tutorial: Follow a step-by-step tutorial where you'll create a project that runs on Android, iOS, and the web.
Join our community of developers creating universal apps.
- Expo on GitHub: View our open source platform and contribute.
- Discord community: Chat with Expo users and ask questions.
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request