Skip to content
Β 
Β 

Repository files navigation

Plan4Impact 🌱

An AI-powered sustainable event planning platform that helps businesses organize eco-friendly events while tracking carbon footprint and budget in real-time.

Plan4Impact

Features

🎯 Smart Event Planning

  • AI-Powered Chatbot: Interactive conversational interface guides you through event planning
  • Real-Time Tracking: Monitor budget and carbon rating as you make selections
  • Attendee Management: Adjust number of attendees with dynamic cost and carbon impact calculations

🏒 Venue Selection

  • Browse sustainable venues with verified credentials
  • View cost per person and maximum capacity
  • Calculate carbon impact based on venue rating and attendee count
  • Formula: (carbon_rating / max_capacity) Γ— attendees

πŸ›ŽοΈ Service Selection

  • Choose from various services: catering, transport, AV equipment, and more
  • Services have lower carbon impact than venues (max 15 vs 50+)
  • Higher sustainability ratings (80+) receive additional impact reduction
  • Formula: ((100 - rating) / 100) Γ— 15 Γ— (attendees / max_capacity)

πŸ“Š Impact Dashboard

  • Budget Tracker: Real-time remaining budget with visual progress bar
  • Carbon Rating: Sustainability score out of 100 (starts at 100)
  • Cost Breakdown: Transparent pricing showing per-person costs and totals
  • Selection Summary: Review all choices with type badges (venue/service)

🌍 Carbon Offset Integration

  • Explore verified carbon offset projects
  • Connect with organizations to achieve carbon neutrality
  • View project details, contact information, and sustainability credentials

✨ Modern UI/UX

  • Framer Motion Animations: Smooth transitions and interactions
  • Responsive Design: Works seamlessly on desktop and mobile
  • React Icons: Clean, consistent iconography throughout
  • Green Theme: Eco-friendly color palette (#e8f5e9 background, #2e7d32 accents)

Tech Stack

  • Frontend: React 18 + TypeScript
  • Build Tool: Vite
  • Styling: CSS3 with custom properties
  • Animations: Framer Motion
  • Icons: React Icons (BiLeaf, HiOutlineLightningBolt, etc.)
  • Backend Integration: n8n webhook for AI chatbot responses

Getting Started

Prerequisites

  • Node.js 16+ and npm

Installation

  1. Clone the repository:
git clone https://github.com/lieuryan/Plan4Impact.git
cd Plan4Impact
  1. Install dependencies:
npm install
  1. Create a .env file in the root directory:
cp .env.example .env
  1. Add your webhook URL to .env:
VITE_WEBHOOK_URL=https://your-webhook-url.com/webhook/your-id/chat
  1. Start the development server:
npm run dev
  1. Open your browser to http://localhost:5173

Build for Production

npm run build

The production-ready files will be in the dist folder.

Preview Production Build

npm run preview

Project Structure

Plan4Impact/
β”œβ”€β”€ public/
β”‚   β”œβ”€β”€ chatbot.png
β”‚   β”œβ”€β”€ favicon.svg
β”‚   └── plant-icon.svg
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ components/
β”‚   β”‚   β”œβ”€β”€ LandingPage.tsx/css      # Hero page with features
β”‚   β”‚   β”œβ”€β”€ EventForm.tsx/css        # Event details input
β”‚   β”‚   β”œβ”€β”€ Chatbot.tsx/css          # AI chatbot interface
β”‚   β”‚   └── EndingScreen.tsx/css     # Results & carbon offset options
β”‚   β”œβ”€β”€ App.tsx                      # Main app router
β”‚   β”œβ”€β”€ main.tsx                     # Entry point
β”‚   └── index.css                    # Global styles
β”œβ”€β”€ package.json
β”œβ”€β”€ tsconfig.json
β”œβ”€β”€ vite.config.ts
└── README.md

Key Components

LandingPage

  • Hero section with call-to-action
  • Feature cards with icons
  • "How It Works" guide
  • Smooth scroll animations

EventForm

  • Budget, guests, and location input
  • Glowing input bar animation
  • Natural language processing ready

Chatbot

  • Real-time budget and carbon tracking
  • Option cards with attendee selectors
  • Sidebar showing selected items
  • Remove/undo functionality
  • Carbon rating info modal

EndingScreen

  • Summary of all selections
  • Total cost and carbon impact
  • Carbon offset project recommendations
  • Contact information for offset providers

Carbon Calculation Logic

Venues

carbonImpactPerPerson = carbon_rating / max_capacity
totalCarbonImpact = carbonImpactPerPerson Γ— attendees

Example: Venue with rating 50, capacity 100, 50 attendees

  • Impact per person: 50/100 = 0.5
  • Total impact: 0.5 Γ— 50 = 25

Services

serviceImpactScore = 100 - carbon_rating
maxServiceImpact = 15
attendeeRatio = attendees / max_capacity
totalCarbonImpact = (serviceImpactScore / 100) Γ— 15 Γ— attendeeRatio

// Bonus for highly sustainable services (rating > 80)
if (carbon_rating > 80) {
  totalCarbonImpact = totalCarbonImpact Γ— 0.5
}

Example: Service with rating 85, capacity 100, 50 attendees

  • Impact score: 100 - 85 = 15
  • Base impact: (15/100) Γ— 15 Γ— 0.5 = 1.125
  • With bonus: 1.125 Γ— 0.5 = 0.56

API Integration

The chatbot integrates with an n8n webhook endpoint. Configure the URL in your .env file:

const N8N_WEBHOOK_URL = import.meta.env.VITE_WEBHOOK_URL

// Request payload
{
  chatInput: string,
  sessionId: string
}

// Response payload
{
  output: {
    text: string,
    step: 'onboarding' | 'venue_selection' | 'services',
    options: [
      {
        id: string,
        title: string,
        cost_per_person: number,
        max_capacity: number,
        carbon_rating: number,
        emissions_saved: number,
        renewables_percentage: number,
        description: string,
        image_url?: string
      }
    ]
  }
}

Environment Variables

Create a .env file in the root directory:

VITE_WEBHOOK_URL=https://your-webhook-url.com/webhook/your-id/chat

This keeps your webhook URL secure and out of version control.

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

This project is licensed under the MIT License.

Acknowledgments

  • Carbon offset data from verified Australian projects
  • Venue sustainability ratings based on NABERS standards
  • Event cost estimates based on 2024-2025 Australian market rates

Contributors

Project Link: Plan4Impact

● Ryan Lieu

● Jeremy Wang

● Temi Oludare

● Alex Davidson

● Sasha Oghanna

● Bianca Luong

● Pranav Ramesh

● Maria Khmelevskaya


Made with πŸ’š for a sustainable future

About

AI powered event planner submission for Accenture Tech Bootcamp 2026

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages