SOLECTRUS is a smart photovoltaic dashboard that shows your energy production and usage. It also calculates costs and savings, helping you get the most out of your solar system.
SOLECTRUS is a smart photovoltaic dashboard that shows your energy production and usage. It also calculates costs and savings, helping you get the most out of your solar system.
Read here about the motivation (in German):
https://ledermann.dev/blog/2021/02/03/photovoltaik-dashboard-als-web-applikation/
A live demo with realtime data is available at https://demo.solectrus.de
For self-hosting SOLECTRUS, please look at https://github.com/solectrus/hosting
git clone [email protected]:solectrus/solectrus.git
cd solectrus
Brewfile
:brew bundle
Ensure that PostgreSQL is running:
brew services start postgresql@16
sudo puma-dev -setup
puma-dev -install
puma-dev link
# Use Vite via puma-dev proxy
# Adopted from https://github.com/puma/puma-dev#webpack-dev-server
echo 3036 > ~/.puma-dev/vite.solectrus
bin/setup
bin/dev
This starts the app and opens https://solectrus.test in your default browser (see Procfile.dev
).
After preparing development environment (see above):
bin/influxdb-restart.sh
DISABLE_SPRING=1 bin/rspec
DISABLE_SPRING=1 RAILS_ENV=test bin/rake cypress:run
open coverage/index.html
RuboCop:
bin/rubocop
ESLint:
bin/yarn lint
TypeScript:
bin/yarn tsc
There is a shortcut to run all test and linting tools:
bin/test
The Live Demo is hosted at Hetzner Cloud. For performance monitoring, it uses RorVsWild, which is free for OpenSource projects. You can see internal metrics like CPU, memory, and disk usage, as well as request times and errors here:
https://www.rorvswild.com/applications/136101/requests
Copyright © 2020-2024 Georg Ledermann, released under the AGPL-3.0 License