SOLECTRUS
An alternative photovoltaic dashboard that visualizes the yield and consumption.
https://github.com/solectrus/solectrus
Category: Renewable Energy
Sub Category: Photovoltaics and Solar Energy
Keywords
influxdb monitoring photovoltaic photovoltaics photovoltaics-dashboard
Keywords from Contributors
transforms measur compose archiving reporting observation animals annotation numerics optimize
Last synced: about 17 hours ago
JSON representation
Repository metadata
SOLECTRUS is a smart photovoltaic dashboard that displays your energy production and consumption. It also calculates costs and savings, helping you maximize the benefits of your solar system.
- Host: GitHub
- URL: https://github.com/solectrus/solectrus
- Owner: solectrus
- License: agpl-3.0
- Created: 2020-12-19T18:28:37.000Z (over 4 years ago)
- Default Branch: develop
- Last Pushed: 2025-04-21T05:54:05.000Z (6 days ago)
- Last Synced: 2025-04-21T06:38:18.060Z (6 days ago)
- Topics: influxdb, monitoring, photovoltaic, photovoltaics, photovoltaics-dashboard
- Language: Ruby
- Homepage: https://solectrus.de
- Size: 24.8 MB
- Stars: 119
- Watchers: 7
- Forks: 18
- Open Issues: 47
- Releases: 59
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
README.md
SOLECTRUS
SOLECTRUS is your smart solar dashboard, giving you real‑time insights into energy generation and consumption. It automatically calculates costs and savings, so you can maximize the performance of your PV system.
Live Demo
Try it out at https://demo.solectrus.de
Installation
SOLECTRUS is a self‑hosted solution — just bring your own server (a Raspberry Pi works great, but any Linux box will do). To get started, visit https://configurator.solectrus.de/ and generate your Docker configuration interactively.
Development
To contribute, set up a local development environment (this guide assumes macOS with Homebrew):
- Clone the repository:
git clone [email protected]:solectrus/solectrus.git
cd solectrus
- Install PostgreSQL, Redis, and puma-dev (if not already present). On a Mac with HomeBrew, run this to install from the
Brewfile
:
brew bundle
Ensure that PostgreSQL is running:
brew services start postgresql@17
- Install and set up puma-dev to use HTTPS for development. Do this on macOS:
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
- Setup the application to install gems and NPM packages and create the database:
bin/setup
- Start the application locally:
bin/dev
This starts the app and opens https://solectrus.test in your default browser (see Procfile.dev
).
Testing
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
Performance Monitoring
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
License
© 2020–2025 Georg Ledermann. Released under AGPL-3.0.
Owner metadata
- Name: SOLECTRUS
- Login: solectrus
- Email:
- Kind: organization
- Description: Photovoltaic Dashboard
- Website: https://solectrus.de
- Location: Jülich, Germany
- Twitter:
- Company:
- Icon url: https://avatars.githubusercontent.com/u/76243773?v=4
- Repositories: 21
- Last ynced at: 2025-04-25T01:12:49.155Z
- Profile URL: https://github.com/solectrus
GitHub Events
Total
- Create event: 461
- Commit comment event: 3
- Release event: 7
- Issues event: 196
- Watch event: 12
- Delete event: 447
- Issue comment event: 374
- Push event: 990
- Pull request review event: 2
- Pull request event: 888
- Fork event: 4
Last Year
- Create event: 461
- Commit comment event: 3
- Release event: 7
- Issues event: 196
- Watch event: 12
- Delete event: 447
- Issue comment event: 374
- Push event: 990
- Pull request review event: 2
- Pull request event: 888
- Fork event: 4
Committers metadata
Last synced: 4 days ago
Total Commits: 5,975
Total Committers: 6
Avg Commits per committer: 995.833
Development Distribution Score (DDS): 0.489
Commits in past year: 1,639
Committers in past year: 4
Avg Commits per committer in past year: 409.75
Development Distribution Score (DDS) in past year: 0.487
Name | Commits | |
---|---|---|
dependabot[bot] | 4****] | 3056 |
Georg Ledermann | g****g@l****v | 2484 |
dependabot-preview[bot] | 2****] | 432 |
Sascha Böck | 4****r | 1 |
Patricio Cano | s****2@g****m | 1 |
Alexander Detsch | a****h | 1 |
Committer domains:
Issue and Pull Request metadata
Last synced: 1 day ago
Total issues: 297
Total pull requests: 1,864
Average time to close issues: about 1 month
Average time to close pull requests: about 7 hours
Total issue authors: 58
Total pull request authors: 6
Average comments per issue: 4.05
Average comments per pull request: 0.07
Merged pull request: 1,805
Bot issues: 0
Bot pull requests: 1,832
Past year issues: 178
Past year pull requests: 1,101
Past year average time to close issues: 4 days
Past year average time to close pull requests: about 7 hours
Past year issue authors: 30
Past year pull request authors: 5
Past year average comments per issue: 3.47
Past year average comments per pull request: 0.09
Past year merged pull request: 1,062
Past year bot issues: 0
Past year bot pull requests: 1,079
Top Issue Authors
- ledermann (78)
- Zeppelin-PV (38)
- StevieC121176 (30)
- gereons (25)
- unclej84 (13)
- bennysweb (13)
- ronzle (6)
- halmich (6)
- patricknitsch (5)
- AlpenFlizzer (5)
- frizzle0815 (5)
- noffycws (4)
- hj-hefer (4)
- q2doc (4)
- spirit0607 (4)
Top Pull Request Authors
- dependabot[bot] (1,832)
- ledermann (23)
- AlpenFlizzer (4)
- ghost (3)
- suprnova32 (1)
- boecks (1)
Top Issue Labels
- bug (66)
- enhancement (16)
- help wanted (15)
- waiting (1)
Top Pull Request Labels
- dependencies (1,832)
- ruby (502)
- javascript (450)
- gh-action (16)
- enhancement (3)
Dependencies
- dependabot/fetch-metadata v1.6.0 composite
- actions/checkout v4 composite
- actions/setup-node v3.8.1 composite
- actions/upload-artifact v3 composite
- docker/build-push-action v5 composite
- docker/login-action v3 composite
- docker/metadata-action v5 composite
- docker/setup-buildx-action v3 composite
- docker/setup-qemu-action v3 composite
- honeybadger-io/github-notify-deploy-action v1 composite
- paambaati/codeclimate-action v5.0.0 composite
- ruby/setup-ruby v1 composite
- influxdb 2.7-alpine docker
- postgres 15-alpine docker
- ghcr.io/ledermann/rails-base-builder 3.2.2-alpine build
- ghcr.io/ledermann/rails-base-final 3.2.2-alpine build
- overmind *
- postgresql@15 *
- puma/puma/puma-dev *
- redis *
- @prettier/plugin-ruby ^4.0.2 development
- @size-limit/file ^9.0.0 development
- @tailwindcss/aspect-ratio ^0.4.2 development
- @tailwindcss/forms ^0.5.6 development
- @tailwindcss/typography ^0.5.10 development
- @types/throttle-debounce ^5.0.0 development
- @typescript-eslint/eslint-plugin ^6.7.2 development
- @typescript-eslint/parser ^6.7.2 development
- autoprefixer ^10.4.16 development
- cypress ^13.2.0 development
- eslint ^8.49.0 development
- eslint-config-prettier ^9.0.0 development
- eslint-plugin-cypress ^2.15.1 development
- eslint-plugin-prettier ^5.0.0 development
- eslint-plugin-tailwindcss ^3.13.0 development
- postcss ^8.4.30 development
- prettier ^3.0.3 development
- prettier-plugin-tailwindcss ^0.5.4 development
- rollup ^3.29.2 development
- size-limit ^9.0.0 development
- tailwindcss ^3.3.3 development
- typescript ^5.2.2 development
- vite ^4.4.9 development
- vite-plugin-rails ^0.1.0 development
- @fortawesome/fontawesome-svg-core ^6.4.2
- @fortawesome/free-brands-svg-icons ^6.4.2
- @fortawesome/free-regular-svg-icons ^6.4.2
- @fortawesome/free-solid-svg-icons ^6.4.2
- @honeybadger-io/js ^6.5.0
- @hotwired/stimulus ^3.2.2
- @hotwired/turbo ^7.2.5
- @hotwired/turbo-rails ^7.3.0
- @rails/actioncable ^7.0.8
- chart.js ^4.4.0
- chartjs-adapter-date-fns ^3.0.0
- date-fns ^2.30.0
- el-transition ^0.0.7
- morphdom ^2.7.0
- plausible-tracker ^0.3.8
- throttle-debounce ^5.0.0
- tippy.js ^6.3.7
- annotate >= 0 development
- brakeman >= 0 development
- capybara >= 3.26 development
- cypress-rails >= 0 development
- dotenv-rails >= 0 development
- guard-rspec >= 0 development
- lookbook >= 0 development
- prettier >= 0 development
- rspec-collection_matchers >= 0 development
- rspec-rails >= 0 development
- rubocop >= 0 development
- rubocop-performance >= 0 development
- rubocop-rails >= 0 development
- rubocop-rspec >= 0 development
- rubocop-thread_safety >= 0 development
- shoulda-matchers >= 0 development
- simplecov >= 0 development
- slim_lint >= 0 development
- spring >= 0 development
- spring-commands-rspec >= 0 development
- vcr >= 0 development
- web-console >= 0 development
- webmock >= 0 development
- bootsnap >= 0
- http_accept_language >= 0
- influxdb-client >= 2.9.0
- lockup >= 0
- lograge >= 0
- meta-tags >= 0
- pg ~> 1.1
- puma ~> 6
- rack-brotli >= 0
- rack-cors >= 0
- rails ~> 7.0.8
- rails-settings-cached >= 0
- redis >= 0
- slim-rails >= 0
- stimulus-rails >= 0
- turbo-rails >= 0
- uri >= 0.12.2
- view_component >= 0
- vite_rails >= 0
- 155 dependencies
Score: 6.903747257584598