A real-time solar fleet monitoring dashboard built with Streamlit, integrating multiple solar APIs, intelligent caching, and even web scraping for systems without official API support.
- SolarEdge v2 API – Fully supported
- Enphase v4 (Partner API) – Near-complete integration
- Sol-Ark – Integrated (battery monitoring supported, alerts in progress)
- Future support planned for Sonnen, SMA, AP-Smart, and others
- Minimizes API costs and reduces redundant requests
- Uses intelligent expiration based on data frequency (1 hour to 1 month)
- Auto-refreshes stale data dynamically
- Live solar production metrics across all connected sites
- Real-time alerts for production failures, communication faults, and configuration issues
- Battery monitoring (SOC, model, serial number)
- Historical data visualization with Altair charts
- Map view for geographic distribution of sites
- Uses Selenium for extracting data when no API is available (currently used for Sol-Ark)
Managing a solar fleet with multiple sites across different platforms is a nightmare. Here’s what you typically have to deal with:
- Logging into multiple monitoring portals (SolarEdge, Enphase, Sol-Ark, etc.)
- Waiting for slow dashboards to load (some take 15+ seconds just to open!)
- Hunting for problems manually—for example, a site might be producing 35kW, but one inverter is down, and you wouldn’t even notice unless you dig into each system one by one.
- No site history—you forget which sites had past issues, making troubleshooting harder.
This project eliminates all those frustrations by providing a single dashboard that gives you a real-time overview of your entire fleet. You get:
- Instant access to all sites across multiple platforms (no need to visit multiple portals)
- Fast problem identification—alerts show which inverter is down, instead of making you guess
- Historical tracking—view site history and past issues for better troubleshooting
- Automated alerts—get notified the moment something goes wrong
Most solar platforms only show their own data. This dashboard is unique because:
- It integrates multiple vendors into one place
- It saves time by removing the need to log into multiple sites
- It provides historical context—so you know if an issue just started or has been happening for months
- Python 3.x
- Streamlit
- Selenium (if using web scraping)
- Other dependencies listed in
requirements.txt
- Clone the repository
git clone https://github.com/yourusername/solar-fleet-dashboard.git cd solar-fleet-dashboard
pip install -r requirements.txt
streamlit run Dashboard.py
Platform | Status | Features |
---|---|---|
SolarEdge v2 | ✅ Complete | Site production, alerts, battery monitoring |
Enphase v4 | 🔄 Near Complete | Real-time production, battery state-of-energy (SOC), alerts |
Sol-Ark | ✅ Integrated | Battery monitoring via Selenium (alerts coming soon) |
Future Integrations | 📌 Planned | Sonnen, SMA, AP-Smart, and more |
- 🔧 Complete Sol-Ark Alerts Integration
- 📈 Support for additional solar inverters & batteries
- 🌎 Improved geographic analytics for production trends
- 📬 Automated email alerts for system failures
- ⚙️ Performance optimizations & database indexing
Want to improve the project? Contributions are welcome!
- Fork the repository
- Make your improvements
- Submit a pull request 🚀
This project is licensed under the MIT License.
Special thanks to:
- Streamlit for the awesome UI framework
- SolarEdge, Enphase, Sol-Ark APIs for providing solar data