Inspiration

Most "smart home" energy tools optimize for cost, not carbon. Even those that attempt to be eco-friendly often rely on average grid emissions, an approach that entirely obscures the true impact of firing up fossil gas peaker plants during high demand.

We were inspired to build GridGhost to make true, real-time carbon intelligence effortless for the modern home. The idea was simple:
What if your house could automatically track when the local grid was relying on clean energy, and shift your flexible energy use (like EV charging and laundry) into those exact windows without you having to lift a finger or interpret complex data charts?

What it does

GridGhost is an intelligent, carbon-aware scheduling engine. It acts as an invisible layer between your heavy-draw appliances and the power grid.

  • It pulls real-time Marginal Operating Emissions Rate (MOER) forecasts to see exactly how dirty or clean the grid will be over the day.
  • It uses a custom Scheduling Optimizer to automatically shift flexible loads—like dishwashers, HVAC systems, and EV chargers—into the cleanest "Optimal" windows.
  • It respects:
    • Dependencies (e.g., the dryer must run after the washer)
    • User anchors (e.g., the EV must be fully charged by 8 AM)
  • Instead of overwhelming users with raw data, GridGhost uses an AI Narrative Layer to generate a concise, human-readable Daily Carbon Brief, explaining:
    • Why your schedule shifted
    • How much CO₂ you saved

How we built it

Backend (FastAPI & Python)

  • Pulls live telemetry from the WattTime API to get localized MOER data
  • Uses a custom Scheduling Optimizer
  • Scores time windows using a composite Health Score:
    • Carbon Intensity
    • Local Air Quality

AI Narrative (Gemini 2.5 Flash)

  • Acts as a translation layer
  • Takes:
    • Structured prompts
    • JSON MOER forecasts
    • Generated schedules
  • Outputs:
    • Plain-English, conversational summaries

Frontend (React, TypeScript & Tailwind CSS)

  • Built an interactive dashboard with:
    • Recharts (data visualization)
    • Framer Motion (animations)
  • Features:
    • Generation mix charts
    • Dual-signal graphs
    • 7-day trend lines
    • Smooth, animated UI

Challenges we ran into

Data Normalization

  • Handling real-time telemetry from WattTime
  • Converting ISO timestamps to local time
  • Mapping fuel source codes to readable categories
  • Preventing chart label overlap

Complex Scheduling Logic

  • Managing:
    • Independent loads
    • Chained dependencies (washer → dryer)
  • While optimizing for lowest carbon impact

Visualizing Data Intersection

  • Designing a clean UI timeline that overlays:
    • Appliance usage
    • MOER data
    • Health scores
  • Without clutter

Accomplishments that we're proud of

The Dual-Signal Health Score

  • Combines:
    • 60% marginal CO₂ rates
    • 40% local PM2.5 / NO₂ air quality
  • Creates a more holistic Grid Health metric

The Gemini Translation Layer

  • Successfully converts complex JSON + scheduling output into: > "I've moved your washer to the morning window. Estimated savings: 4.0 lbs CO₂"

Premium UI / UX Design

  • Modern, polished interface featuring:
    • Neon-inspired visuals
    • Animated tooltips
    • Dynamic gradients
    • "Grid Pulse" aesthetic

What we learned

  • Marginal emissions matter more than average emissions when reducing real-world carbon impact
  • LLMs like Gemini 2.5 are extremely powerful when:
    • Constrained
    • Used as a translation layer between complex systems and users

What's next for GridGhost

Hardware Ecosystem Integrations

  • Connect with:
    • Home Assistant
    • Google Home
    • SmartThings
  • Automatically trigger appliances

Micro-Local Air Quality

  • Integrate neighborhood-level sensor data (e.g., PurpleAir)
  • Improve environmental accuracy

Emergency Grid Interventions

  • Use AI to:
    • Send real-time alerts
    • Provide conservation advice during grid strain or brownouts

Built With

  • eia-open-data
  • fastapi
  • framer
  • gemini
  • open-meteo
  • react
  • recharts
  • tailwind
  • vite
  • watttime
Share this project:

Updates