- Project Name: EcoGrow
- Project Description: EcoGrow empowers individuals to contribute to environmental sustainability from the comfort of their homes. By watching ads, users earn tokens that fund the planting of real trees. Support NGOs, climb the leaderboard, and win fresh produce as monthly rewards!
-
Framework: ExpressJS (TypeScript)
-
Database: PostgreSQL
-
Workflow Engine: Conductor OSS
-
API Integration: Tree Nation API (for fetching tree-related information)
- Framework: Next.js (TypeScript)
-
User Dashboard: Users can track their tree-planting contributions, CO₂ offset, and global rankings.
-
Interactive Map: A visual representation of planted trees across different locations.
-
Leaderboard: Encourages friendly competition among users based on contributions.
-
Tree Catalog: Provides details on available trees using data from Tree Nation's API.
-
Automated Workflows: Powered by Conductor OSS to handle complex background processes efficiently.
-
Node.js (v16 or later)
-
PostgreSQL
-
Docker (optional, for Conductor OSS setup)
cd ecogrow-backend
pnpm install
cp .env.example .env # Configure your environment variables
pnpm run dev # Start the backend server
cd ecogrow-frontend
pnpm install
pnpm run dev # Start the Next.js development server
- Ensure PostgreSQL is running and update your .env file with the correct database credentials. Run migrations if applicable:
npx prisma migrate dev
- You can seed the database with example data by running https://github.com/Team-ByteWise/frosthacks/blob/main/ecogrow-backend/prisma/seed.ts
Conductor OSS can be run using https://github.com/Team-ByteWise/frosthacks/blob/main/ecogrow-backend/workflows/ecogrow_conductor.ts