- 🤖 Introduction
- ⚙️ Tech Stack
- 🔋 Features
- 🤸 Quick Start
Built with Next.js, EcoTrack is scalable, responsive, and designed to promote sustainable living and it offers real-time waste tracking and smart insights to help eco-conscious communities manage their waste efficiently.
- Next.js
- TypeScript
- TailwindCSS
- ShadCN UI
- Web3Auth
- Gemini AI
- Google Maps
- Drizzle
👉 Authentication: An ultra-secure SSR authentication with proper validations and authorization
👉 Real-Time Waste Tracking: Real-time tracking of waste collection activities, monitoring waste management efforts accurately and efficiently
👉 Smart Insights: Leveraging the power of Gemini AI, intelligent insights and analytics to make informed decisions about their waste management practices
👉 Home Page: Shows general overview of user account with waste management activities, overall impacts, etc
👉 Data Transactions: Robust and efficient database management, ensuring data integrity and performance
👉 Community Focus: Tailored for eco-conscious communities, promoting sustainable living through effective waste management solutions
👉 Sleek User Interface: Offers a modern and intuitive user interface, enhancing the overall user experience
👉 Responsiveness: Ensures the application adapts seamlessly to various screen sizes and devices, providing a consistent user experience across desktop, tablet, and mobile platforms.
and many more, including code architecture and reusability.
Follow these steps to set up the project locally on your machine.
Prerequisites
Make sure you have the following installed on your machine:
Cloning the Repository
git clone https://github.com/MenathNDGD/EcoTrack.git
cd EcoTrack
Installation
Install the project dependencies using npm:
npm install
Set Up Environment Variables
Create a new file named .env
in the root of your project and add the following content:
NEXT_PUBLIC_DATABASE_URL=
NEXT_PUBLIC_WEB3_AUTH_CLIENT_ID=
NEXT_PUBLIC_GEMINI_API_KEY=
NEXT_PUBLIC_GOOGLE_MAPS_API_KEY=
Replace the placeholder values with your actual respective account credentials.
Running the Project
Generate and push the database migrations using Drizzle:
npx drizzle-kit generate
npx drizzle-kit push
Run the project on localhost server:
npm run dev
Open http://localhost:3000 in your browser to view the project.