EcoWaste AI is an intelligent waste management application that helps users identify organic waste and provides eco-friendly disposal solutions using AI-powered image recognition.
- 📷 AI-Powered Image Recognition - Upload photos of organic waste for instant identification
- 🌿 Smart Waste Classification - Automatically categorizes different types of organic waste
- ♻️ Eco-Friendly Solutions - Get personalized composting and disposal recommendations
- 🎨 Beautiful UI - Modern, responsive design built with Next.js and Tailwind CSS
- 🚀 Fast & Reliable - FastAPI backend with Google Gemini AI integration
- 🌍 Environmental Impact - Learn about the environmental benefits of proper waste management
- Next.js 15 - React framework with App Router
- React 19 - Latest React with modern features
- Tailwind CSS 4 - Utility-first CSS framework
- Lucide React - Beautiful SVG icons
- FastAPI - Modern Python web framework
- Google Gemini AI - Advanced vision AI model
- Uvicorn - ASGI server for Python
- Python Multipart - File upload handling
- Get your Google Gemini API Key:
- Visit Google AI Studio
- Create a new project or select existing one
- Generate an API key for Gemini
git clone https://github.com/H-raheel/ecowaste-ai.git
cd ecowaste-ai-
Navigate to backend directory:
cd backend -
Create virtual environment:
# Windows python -m venv venv venv\Scripts\activate # macOS/Linux python3 -m venv venv source venv/bin/activate
-
Install dependencies:
pip install -r requirements.txt
-
Create environment file:
# Create .env file in backend directory echo "GEMINI_API_KEY=your_actual_gemini_api_key_here" > .env
⚠️ Important: Replaceyour_actual_gemini_api_key_herewith your actual Gemini API key! -
Start the backend server:
uvicorn app.main:app --reload --host 127.0.0.1 --port 8000
The backend will be available at:
http://127.0.0.1:8000
-
Open a new terminal and navigate to frontend directory:
cd frontend -
Install dependencies:
npm install
-
Create environment file:
# Create .env.local file in frontend directory echo "NEXT_PUBLIC_API_URL=http://127.0.0.1:8000" > .env.local
-
Start the development server:
npm run dev
The frontend will be available at:
http://localhost:3000
## 🔧 Configuration
### Backend Configuration
Edit `backend/.env`:
```env
GEMINI_API_KEY=your_gemini_api_key_here
Edit frontend/.env.local:
NEXT_PUBLIC_API_URL=http://127.0.0.1:8000-
Open your browser and navigate to
http://localhost:3000 -
Upload an image of organic waste by:
- Clicking the upload area
- Dragging and dropping an image
- Taking a photo with your device camera
-
Click "Get Eco Solutions" to analyze the waste
-
View the results including:
- Waste type identification
- Environmental impact information
- Step-by-step disposal/composting instructions
- Sustainability benefits
