Inspiration

The Carbon eMissionary is a carbon footprint tracker that's been the result of our inspiration to encourage more individuals to take accountability for their impact on the environment as the ongoing concerns of climate change continue to rise. In doing so, we wanted to provide an easy way of tracking and reducing one's carbon footprint, while making it accessible to everyone!

What it does

Carbon eMissionary allows users to input data related to their daily activities, such as transportation, energy usage, and food consumption. Then, the tool calculates their carbon footprint and displays the results. Moreover, a leaderboard has been implemented to motivate users to lower their carbon footprint by showcasing the top eco-friendly participants.

How we built it

We built Carbon eMissionary using a full-stack approach with modern technologies:

  • Frontend: React with Vite, Tailwind CSS for responsive styling
  • Backend: Express.js RESTful API with modular architecture
  • Database: PostgreSQL (NeonDB) for storing user data and environmental metric entries
  • Authentication: JWT-based authentication with cookie management and bcrypt password hashing
  • AI Integration: OpenAI API (GPT-4o) for generating personalized environmental insights
  • Data Visualization: Custom components for displaying metrics and leaderboards
  • API Design: RESTful endpoints for user authentication, data submission, and retrieving insights
  • Secure Communication: CORS implementation for secure cross-origin requests

Challenges we ran into

During development, we faced several challenges:

  • Structuring complex OpenAI prompts to ensure consistent, well-formatted JSON responses
  • Implementing secure authentication while maintaining a smooth user experience
  • Designing a database schema that efficiently stores both user data and environmental metrics
  • Creating a validation system that allows optional fields without compromising data quality
  • Balancing between comprehensive data collection and user-friendly interface
  • Ensuring consistent data types between frontend and backend
  • Managing asynchronous operations between the database, AI API, and frontend

Accomplishments that we're proud of

Despite the challenges, we're proud of several achievements:

  • Successfully implementing a modern full-stack application with secure authentication
  • Creating an AI-powered system that provides genuinely useful environmental insights
  • Building an engaging leaderboard that promotes positive competition
  • Designing a clean, intuitive user interface that makes sustainability tracking accessible
  • Implementing a modular codebase with separation of concerns for maintainability
  • Setting up secure database interactions with proper error handling
  • Delivering a working prototype that addresses a real-world environmental challenge

What we learned

This project taught us valuable lessons in both technical and environmental domains:

  • How to effectively structure prompts for AI models to generate structured, actionable data
  • Techniques for secure user authentication in modern web applications
  • The importance of data validation and type safety in full-stack development
  • Methods for calculating and contextualizing environmental impacts
  • The power of social features in encouraging sustainable behavior
  • The complexity of environmental metrics and how to present them meaningfully
  • The value of modular code architecture for team collaboration

What's next for Carbon eMissionary

Looking forward, we envision several exciting enhancements:

  • Mobile application development with React Native
  • Expanded social features including challenges, teams, and community goals
  • More granular insights with regional environmental factors
  • Partnerships with sustainability organizations for verified carbon offset programs
  • Gamification features to increase engagement and retention
  • Machine learning implementation to provide predictive insights based on user patterns
  • API integrations with transportation and utility services for automatic data import

Built With

Share this project:

Updates

Submission history