Inspiration
We wanted to make sustainability fun and achievable for everyone. Most people care about the environment but struggle to maintain eco-friendly habits. We realized gamification could be the key—turning everyday sustainable actions into rewarding challenges that build lasting positive change.
What it does
EcoTracker is a full-stack sustainability tracker that gamifies eco-friendly living. Users earn XP points for real-world sustainability actions:
- 🌽 Visiting farmers markets
- 🚗 Carpooling with friends
- ♻️ Recycling (plastic, paper, metal)
- ⚡ Using electric rideshare (Uber/Lyft EV)
- 🔋 Driving EV or hybrid vehicles
Users can compete on global leaderboards (top 50 users), connect with friends, and access sustainability tools like carbon calculators, water estimators, and energy audits. The app features EcoRoute—a CO₂ comparison tool for transportation to farmers markets.
How we built it
Frontend: React 19 + Vite + React Router v7 + Recharts
Backend: Node.js + Express 5 (ESM)
Authentication: Firebase (Google Sign-In)
Database: JSON file store (no external DB needed)
Routing: OSRM (open-source routing for route planning)
The app features a complete friend system with webhooks, XP formulas tied to real environmental impact, and a leaderboard system. Users sign in with Google, set a unique username, and start logging activities through an intuitive dashboard.
Challenges we ran into
- XP formula balancing: We needed to ensure that different activities were weighted fairly to reflect their actual environmental impact
- Friend system complexity: Implementing a full friend request system with webhook notifications for username changes
- Real-time leaderboard updates: Maintaining accurate leaderboards for both global and friend-specific rankings
- No external database: Designing a scalable JSON-based storage solution without native compilation dependencies
- Route optimization: Integrating OSRM for CO₂ comparison calculations across multiple transportation modes
Accomplishments that we're proud of
✅ Complete full-stack application from auth to leaderboards
✅ Innovative XP formula system reflecting real environmental impact
✅ Friend system with webhook notifications for real-time updates
✅ Multi-mode sustainability tracking (6+ activity types)
✅ Beautiful UI with earthy/paper design theme
✅ EcoRoute feature calculating CO₂ savings across transportation options
✅ Zero external database—everything runs with just Node.js and Firebase
✅ Production-ready with proper auth middleware and data validation
What we learned
- Gamification drives engagement: XP and leaderboards make users excited about sustainability
- Friend connections matter: Social features encourage accountability and competition
- Environmental data is complex: Different activities have vastly different carbon impacts and need nuanced formulas
- Webhooks are powerful: Real-time notifications keep users engaged across the platform
- Simplicity wins: A JSON file store proved sufficient—no need to over-engineer the backend
- UX is critical: Making activity logging frictionless is key to adoption
What's next for EcoTracker
🚀 Mobile app: Native iOS/Android apps for logging activities on-the-go
📊 Advanced analytics: Detailed carbon impact tracking and personal sustainability reports
🏆 Achievements & badges: Milestone-based rewards for hitting XP thresholds
🤝 Community challenges: Team-based sustainability challenges between friend groups
🌍 Integration with real services: Connect to Uber API, local farmers markets databases, and carbon tracking APIs
💳 Reward partnerships: Partner with eco-friendly brands to offer real rewards for XP
🔔 Push notifications: Real-time alerts for friends' activities and leaderboard movements
📱 Offline mode: Log activities offline and sync when reconnected
Built With
- express.js
- node.js
- openroute
- react
- vscode
Log in or sign up for Devpost to join the conversation.