sbSahan Bandara

02 — Home solar PWA

Solar MonitorLive solar data, from roof to pocket.

A monitoring PWA for a home solar setup. An ESP32 running ESPHome reads the MPPT charge controller and posts readings to Supabase every 30 seconds, and the app shows live production, history charts and battery trends, works offline, and sends Telegram alerts.

Visit live site ↗
Type
Personal IoT project + PWA
Hardware
ESP32 running ESPHome
Data
Readings to Supabase every 30 seconds
Alerts
Telegram bot
Solar Monitor dashboard on laptop and phone

Architecture

From charge controller to phone

  1. 01

    MPPT controller

    The solar charge controller is the source of every reading.

  2. 02

    ESP32 + ESPHome

    Reads the controller and posts readings every 30 seconds.

  3. 03

    Supabase

    Stores readings and serves live and historical data.

  4. 04

    PWA

    React + Vite app for live production, history and battery trends.

  5. 05

    Telegram

    Alerts pushed through a Telegram bot.

What it does

Everything at a glance, even offline

  • Live

    Live production

    Current solar output as new readings arrive.

  • History

    History charts

    Production over time, at a glance.

  • Battery

    Battery trends

    How the battery charges and drains.

  • Offline

    Works offline

    An installable PWA that keeps working without a connection.

  • Alerts

    Telegram alerts

    Notifications delivered through a Telegram bot.

  • Stack

    TypeScript + React

    Built with Vite, Supabase and ESPHome.

Next case study

Innkeep

A hotel PMS SaaS — run your whole hotel from one screen.

Read case study →

06 — Let’s talk

Hiring, or have something to build?Let’s talk.

I’m open to full-time frontend roles and freelance projects. Tell me what you’re working on and I’ll get back to you soon.