Horizon Solar Dashboard overview showing battery charge, solar input, power use, and the Sunflower panel
The dashboard interface, shown with example readings.
The project

Making the system easier to understand

I built this as the software side of the Sunflower Solar Panel project. The goal is to make it easy to see how much energy the panel is producing, how much is stored in the battery, and which devices are using it.

The interface is split into five views: Overview, Panel, Plugs, Energy, and System. Each one focuses on a different part of the setup, with a layout that works on both phones and computers.

Current status

The software is a working prototype using simulated readings and controls. Charlie and I are developing the hardware separately; connecting the dashboard to the real controller is still in development.

Inside the Dashboard

A closer look at the app, using example data. Select any screenshot to view it full size.

Panel screen with a Sunflower preview, tracking modes, and manual direction and tilt controls
Panel controls — Tracking modes and manual direction and tilt.
Plugs screen showing example devices, their power use, daily schedules, and battery reserves
Plugs & routines — Power use, daily schedules, and battery reserves.
Energy screen with a weekly solar production chart, daily totals, peak output, and energy equivalents
Energy history — Solar production over time and what that energy can power.
System screen showing the selected Sunflower device, an example fixed solar array, and preference sections
System & devices — Solar devices and the settings that keep the setup together.

What the App Can Do

The main features built into the prototype.

Battery & Energy Monitoring

Shows battery charge, solar input, and power use together. Energy charts cover day, week, month, and year views, with a CSV export for the selected period.

Panel Controls

Provides automatic tracking, a resting position, and manual angle settings for the Sunflower panel. The prototype models how different conditions affect the system.

Plug Schedules & Timers

Organizes connected loads with daily schedules and timers. A battery reserve setting pauses a simulated plug when the available charge runs low.

System Settings

The System view keeps device information and battery capacity settings together. Appearance options include light and dark themes, accent colours, and a custom system name.

How It's Built

Built with React and Vite, with reusable interface components and separate simulation logic. Preferences, example devices, and plug routines are saved locally in the browser.