EcoStep is a multi-functional platform that lets users:
- Analyze receipts to calculate carbon footprints
- Interact with a smart chatbot for environmental queries
- Generate professional monthly CO₂ reports using AI and cloud tools
- 📸 OCR Analyzer: Upload receipt images and extract product details with estimated carbon footprint.
- 🤖 AI Chatbot: Ask sustainability questions powered by LLM (Groq).
- 📊 Monthly Report Generator: Creates Word reports, graphs, and AI-generated suggestions.
- 📱 WhatsApp Alerts: Sends report links directly via WhatsApp using Twilio.
- ☁️ Google Drive Upload: Uploads reports to Google Drive and returns a public download link.
project/
├── .env # API credentials (never push to GitHub)
├── chatbot_app.py # Streamlit chatbot app
├── ocr_app.py # Streamlit OCR receipt app
├── config.py # Loads credentials from .env
├── chatbot/
│ ├── __init__.py
│ ├── llm_utils.py
│ └── database.py
├── ocr/
│ ├── __init__.py
│ ├── ocr_utils.py
│ └── database.py
├── reports/
│ ├── __init__.py
│ └── report_generator.py
git clone https://github.com/DPRASAD-dp/EcoStep.git
cd ecosteppip install -r requirements.txtCreate a .env file in the root directory and fill in your actual keys.
Example structure for .env:
# === GROQ AI ===
GROQ_API_KEY=your_groq_api_key_here
# === Twilio WhatsApp Integration ===
TWILIO_ACCOUNT_SID=your_twilio_account_sid_here
TWILIO_AUTH_TOKEN=your_twilio_auth_token_here
WHATSAPP_FROM=whatsapp:+14155238886
WHATSAPP_TO=whatsapp:+91xxxxxxxxxx
# === Google Drive OAuth (for uploading reports) ===
GOOGLE_CLIENT_ID=your_google_client_id_here
GOOGLE_CLIENT_SECRET=your_google_client_secret_here
streamlit run ocr_app.pystreamlit run chatbot_app.pypython -m reports.report_generatorhttps://www.loom.com/share/50289e780112484cac585c8fd2fc473f?sid=f08d5f2c-6b49-449a-b9fd-376b963dcab2
This project is licensed under the MIT License.
Contributions are welcome! Feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch:
git checkout -b feature/amazing-feature
- Commit your changes:
git commit -m 'Add some amazing feature' - Push to the branch:
git push origin feature/amazing-feature
- Open a Pull Request
When contributing, please:
- Write clean, maintainable code
- Add appropriate comments and documentation
- Follow the existing coding style
- Test your changes thoroughly
- Be respectful and constructive in code reviews
For any queries, contact: kdurgaprasadkavali@gmail.com