{"id":24011879,"url":"https://github.com/davbauer/chargecontroller","last_synced_at":"2025-08-21T15:18:53.154Z","repository":{"id":188244177,"uuid":"668829844","full_name":"davbauer/chargeController","owner":"davbauer","description":"ChargeController controls goE-Charger to charge electric vehicles dynamically based on photovoltaic power","archived":false,"fork":false,"pushed_at":"2024-07-01T12:43:05.000Z","size":3349,"stargazers_count":5,"open_issues_count":8,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-15T06:07:32.096Z","etag":null,"topics":["automation","chargecontroller","docker","docker-compose","docker-image","electric-vehicle","fronius","fronius-solar-api","go-echarger","inverter","photovoltaic","selfhosted"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/davbauer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-07-20T17:25:44.000Z","updated_at":"2024-08-26T08:37:09.000Z","dependencies_parsed_at":"2023-08-14T12:55:57.159Z","dependency_job_id":"e5468eb1-cdba-4f11-830a-bf7154bf015a","html_url":"https://github.com/davbauer/chargeController","commit_stats":{"total_commits":212,"total_committers":3,"mean_commits":70.66666666666667,"dds":"0.40094339622641506","last_synced_commit":"5f426c45e24806221415cca81a977db53a0be3ac"},"previous_names":["davbauer/chargecontroller"],"tags_count":16,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davbauer%2FchargeController","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davbauer%2FchargeController/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davbauer%2FchargeController/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davbauer%2FchargeController/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/davbauer","download_url":"https://codeload.github.com/davbauer/chargeController/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249016626,"owners_count":21198833,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","chargecontroller","docker","docker-compose","docker-image","electric-vehicle","fronius","fronius-solar-api","go-echarger","inverter","photovoltaic","selfhosted"],"created_at":"2025-01-08T05:17:17.000Z","updated_at":"2025-04-15T06:07:41.266Z","avatar_url":"https://github.com/davbauer.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# chargeController\n\n## Summary\n\nA way to dynamically control the charging power of an electric vehicle charger based on Photovoltaic panels!\n\nCurrently only suppots exact configuration:\n\n- go-eCharger (with following API: https://github.com/goecharger/go-eCharger-API-v2)\n- Fronius Inverter (with following API: **Fronius Solar API V1**)\n\n## Build Status\n\n| Branch | Build Status                                                                                                                     |\n| ------ | -------------------------------------------------------------------------------------------------------------------------------- |\n| main   | ![Build Status - main](https://github.com/davbauer/chargeController/actions/workflows/main-build-push.yml/badge.svg?branch=main) |\n| dev    | ![Build Status - dev](https://github.com/davbauer/chargeController/actions/workflows/dev-build-push.yml/badge.svg?branch=dev)    |\n\n## Developement\n\n### Setting up developement envirement\n\nNew terminal window\n\n```bash\nyarn           # Install packages\nyarn dev       # Run frontend\n```\n\nNew terminal window\n\n```bash\ncd ./backend   # Change dir to 'backend'\nyarn           # Install packages\nyarn dev       # Run backend\n```\n\n## Production\n\n### Building the docker image\n\n```bash\ndocker build --build-arg GIT_COMMITID=$(git rev-parse HEAD) --build-arg GIT_BRANCH=$(git symbolic-ref --short HEAD) -t charge-controller .\n```\n\n### Using docker-compose.yml\n\n```yml\nversion: '3'\n\nservices:\n  charge-controller:\n    restart: unless-stopped\n    container_name: charge-controller\n    image: charge-controller\n    environment:\n      - WEBSOCK_PORT=81\n    ports:\n      - '2000:80'\n      - '81:81'\n    volumes:\n      - ./config:/app/config\n```\n\n\u003e [!IMPORTANT]  \n\u003e If you want to change the port of the Websocket please change the port everywhere (**port mapping \u0026 environment**).\n\n## Other\n\n### Preview\n\n![preview](./assets/preview.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdavbauer%2Fchargecontroller","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdavbauer%2Fchargecontroller","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdavbauer%2Fchargecontroller/lists"}