This is a submission for the GitHub Copilot Challenge : Fresh Starts
What I Built
EcoStarter is a web app that empowers individuals to begin their journey towards a sustainable lifestyle. It provides tools for lifestyle analysis, personalized eco-friendly challenges, a carbon footprint tracker, and a community space to share ideas and progress. The app focuses on helping users reduce their environmental impact through actionable steps and measurable progress.
Key Features:
- Lifestyle Analysis: Understand current habits and receive personalized AI-driven recommendations to adopt eco-friendly practices.
- Eco Challenges Dashboard: Create and complete challenges which will help you progress towards a more sustainable lifestyle.
- Carbon Footprint Tracker: Track the environmental impact of your lifestyle over time using dedicated metrics.
- Community Space: Connect with others, share your journey, and witness people's journey towards a sustainable journey. (See demo)
- Resource Finder: Enhance your knowledge by exploring a curated collection of blogs, books and other resources on adopting sustainable lifestyles.
Demo
You can check out the deployed app here: EcoStarter Live Demo
Repo
The source code for the project is available on GitHub: EcoStarter
EcoStarter
EcoStarter is a web application designed to help individuals adopt a more sustainable lifestyle. It provides personalized eco-friendly recommendations, tracks carbon footprints, and connects users with a community of like-minded individuals.
Features
- Personalized Plan: Get a customized eco-friendly lifestyle plan based on your habits and goals.
- Daily Challenges: Complete fun and meaningful eco-challenges to build sustainable habits.
- Community Support: Join a community of eco-conscious individuals sharing tips and experiences.
- Impact Tracking: Measure and visualize your environmental impact over time.
Tech Stack
- Frontend: React, TypeScript, Tailwind CSS
- Backend: Firebase (Firestore, Authentication)
- APIs: Cloudinary for image uploads, Google Generative AI for lifestyle analysis
Getting Started
Prerequisites
- Node.js
- npm or yarn
Installation
-
Clone the repository:
git clone https://github.com/yourusername/EcoStarter.git cd EcoStarter
-
Install dependencies:
npm install
-
Set up environment variables Create a
.env
file in the root directory and add your Firebase and Cloudinary configuration:VITE_FIREBASE_API_KEY=
β¦
Copilot Experience
Throughout the 8 hours of developing EcoStarter, GitHub Copilot helped me a lot. I used the various features Copilot has to offer so that I could make the project better.
- Code Auto-completion : I used Copilot's code autocompletion to generate boilerplate for the components. This feature also helped me complete code faster as it automatically completed the code as I kept typing, thereby making development faster.
- In-line chat: I used the inline chat feature to fix errors as well as generate Tailwind CSS styling in some areas.
- Generating Tests: Copilot also helped me generate sample resources for testing my code as well as displaying it on the website. This helped me a lot as I didn't have to find resources manually and was able to save time.
- Bug Fixing & debugging: Copilot suggested fixes for some common coding errors on the go, which made debugging code very easy. I also took Copilot's help to understand and debug various errors which I got in the browser console. I would tell Copilot to explain the error and Copilot gave a detailed explanation of why the error was working along with possible solutions which I could just copy and paste from the chat tab.
- Copilot Chat: Copilot chat helped me code the authStore and userStore hooks with the help of Zustand.
Overall, using GitHub Copilot was a great experience, as it helped me code faster and with fewer errors.
GitHub Models
I used two models in this project:
- GPT 4o
- o1(Preview)
These models helped me phrase the prompts properly so that I could get a better response from Google generative AI while trying to calculate carbon emissions as well as to suggest sustainable lifestyle to users.
I also checked out other models like Claude 3.5 sonnet (Preview) but as it was giving large code blocks with redundant code in some places, I omitted using it. Overall, this project introduced me to GitHub models, and I'm really amazed to see how good these models are. I look forward to using them with this project in future as well.
Conclusion
Building EcoStarter was a rewarding experience for me, as it taught me how I can combine AI with sustainable practices and user engagement to create an impactful solution.
- The primary purpose of building this web-app is to enable users to take their first steps towards a more eco-friendly life. This app empowers users to break old habits and make a "fresh start" with a focus on sustainability.
- This app also plans to reduce the carbon-footprints of users and making them more conscious about the environment. The features like the carbon footprint tracker, personalized challenges, and resource finder actively promote responsible consumption and climate action.
Future Plans:
Even though this contest was of 24 hours, I would still like to continue improving this app by adding the following features:
- Dedicated section for recycling: I would like to add features for locating nearby recycling centers, and eco-friendly vendors.
- Improvements to the community section: I would like to add some more features to the community section
- Gamification of the website: I would like to add experience points(XPs) to each activity which would also be used to redeem some rewards and stuff. In this way, users will feel more engaged.
- Adding more challenges: I will also add more personalized challenges(daily, weekly, monthly) in the challenges section.
Thanks for giving me an opportunity to work on this beautiful project as part of this hackathon. I really hope people find this website useful. Do share your thoughts in the Comments sectionππ.....
Top comments (0)