This is an open-source hobby project that provides a standalone, serverless Blazor WebAssembly app to enable UK-based users easy access to detailed insights on their energy usage and energy costs.
Full documentation can be found at docs.explainmyenergy.net
The application is essentially a client-side wrapper around the consumer API provided by n3rgy, providing detailed energy analysis not available to many consumers - maybe due to the limitations of their energy provider, and often requiring the use of pay-to-use energy apps for the same level of insight.
The analysis includes showing the effects of seasonal temperature on energy usage and costs, as well as daily, weekly and monthly summaries of historical, present and forecast energy usage and costs.
The best way to get a feel of the app is to try the demo site, pre-configured with dummy data.
The application should be fully functional on up-to-date desktop browsers. It has been tested on the latest desktop versions of Chrome, Firefox, Edge and Safari*.
The application currently makes extensive use of browser local storage and the initial app download size is quite large. Currently it may not be functional on some mobile browsers, as these browsers usually have comparatively smaller local storage and cache limits.
However both the main app and the demo site have been tested on iPhone 13* and Galaxy S8, although out of date mobile OS versions may have issues. For iOS ideally use the latest version (17.4 at time of writing), and likewise for Android (version 14 at time of writing). Your mileage may vary.
Initial App download size comes with the territory of Blazor WebAssembly apps right now. App size has been reduced with the cautious use of the .NET Trimmer, but there may be more to gain here.
Note
*WebKit based browsers such as Safari display intermittent issues using test emulators, regardless of the platform, but appear to be working fine in the wild.
Important
Be aware that all data is stored unencrypted in the browser's local storage. No personal data is requested or stored by the application, but to function, the app requires a smart meter IHD (In Home Device) MAC ID, and energy meter MPAN and MPRN numbers. The documentation has more details on these numbers on the setup page.
There is a feature to lock and encrypt potentially sensitive data, given a user provided password: app lock docs. This doesn't require server-held user accounts or third-party authentication providers.
Data stored in browser local storage is only accessible by the web app that created it, and XSS attack risks have been minimized - however, don't use this app on a shared device or a device that you don't trust.
There's comprehensive documentation at docs.explainmyenergy.net.
Exploring the demo implementation, pre-configured with dummy data and requiring no setup, is recommended and available at demo.explainmyenergy.net
The live version that you can to analyze your own energy data, is available at explainmyenergy.net