{"id":13723827,"url":"https://github.com/evcc-io/evcc","last_synced_at":"2026-03-01T00:02:46.310Z","repository":{"id":36953544,"uuid":"226368338","full_name":"evcc-io/evcc","owner":"evcc-io","description":"solar charging ☀️🚘","archived":false,"fork":false,"pushed_at":"2026-02-15T00:27:07.000Z","size":67476,"stargazers_count":6148,"open_issues_count":106,"forks_count":1188,"subscribers_count":64,"default_branch":"master","last_synced_at":"2026-02-15T04:36:47.001Z","etag":null,"topics":["battery","charger","eebus","emobility","golang","home-automation","modbus","mqtt","ocpp","pv","semp","solar","sunspec","wallbox"],"latest_commit_sha":null,"homepage":"https://evcc.io","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/evcc-io.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null},"funding":{"github":"evcc-io","patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2019-12-06T16:27:04.000Z","updated_at":"2026-02-14T19:33:52.000Z","dependencies_parsed_at":"2026-01-08T09:01:55.558Z","dependency_job_id":null,"html_url":"https://github.com/evcc-io/evcc","commit_stats":{"total_commits":5687,"total_committers":258,"mean_commits":22.04263565891473,"dds":0.3534376648496571,"last_synced_commit":"e4f8d24b4c40c28d61b3e2380dd785072e77476f"},"previous_names":["andig/ulm","andig/evcc"],"tags_count":318,"template":false,"template_full_name":null,"purl":"pkg:github/evcc-io/evcc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evcc-io%2Fevcc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evcc-io%2Fevcc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evcc-io%2Fevcc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evcc-io%2Fevcc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/evcc-io","download_url":"https://codeload.github.com/evcc-io/evcc/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evcc-io%2Fevcc/sbom","scorecard":{"id":385990,"data":{"date":"2025-08-11","repo":{"name":"github.com/evcc-io/evcc","commit":"4ba1db1a8d8e7d583b54bff37332033afc9a22f4"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.1,"checks":[{"name":"Code-Review","score":4,"reason":"Found 12/30 approved changesets -- score normalized to 4","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Maintained","score":10,"reason":"30 commit(s) and 25 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Info: jobLevel 'contents' permission set to 'read': .github/workflows/claude-issue-triage.yml:12","Warn: no topLevel permission defined: .github/workflows/claude-issue-triage.yml:1","Warn: no topLevel permission defined: .github/workflows/default.yml:1","Warn: no topLevel permission defined: .github/workflows/docs-issue.yml:1","Warn: no topLevel permission defined: .github/workflows/documentation.yml:1","Warn: no topLevel permission defined: .github/workflows/nightly.yml:1","Warn: no topLevel permission defined: .github/workflows/release.yml:1","Warn: no topLevel permission defined: .github/workflows/schema.yml:1","Warn: no topLevel permission defined: .github/workflows/stale.yaml:1","Warn: no topLevel permission defined: .github/workflows/website.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/claude-issue-triage.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/claude-issue-triage.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/claude-issue-triage.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/claude-issue-triage.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:51: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:53: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:59: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:69: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:84: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:86: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:92: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:110: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:112: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:118: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/default.yml:131: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:141: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:143: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:161: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:176: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:178: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:184: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:194: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:210: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:230: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/default.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/default.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs-issue.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/docs-issue.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs-issue.yml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/docs-issue.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/documentation.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/documentation.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/documentation.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/documentation.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/documentation.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/documentation.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/nightly.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/nightly.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/nightly.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/nightly.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/nightly.yml:41: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/nightly.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/nightly.yml:47: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/nightly.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/nightly.yml:54: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/nightly.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/nightly.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/nightly.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/nightly.yml:64: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/nightly.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/nightly.yml:72: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/nightly.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/nightly.yml:95: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/nightly.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/nightly.yml:123: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/nightly.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/nightly.yml:127: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/nightly.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/nightly.yml:136: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/nightly.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/nightly.yml:143: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/nightly.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/nightly.yml:150: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/nightly.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:11: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/release.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/release.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/release.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/release.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/release.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:41: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/release.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:57: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/release.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:62: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/release.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:71: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/release.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:92: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/release.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:100: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/release.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:120: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/release.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:121: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/release.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:132: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/release.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/schema.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/schema.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/schema.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/schema.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/stale.yaml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/stale.yaml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/website.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/website.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/website.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/website.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/website.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/evcc-io/evcc/website.yml/master?enable=pin","Warn: containerImage not pinned by hash: Dockerfile:2","Warn: containerImage not pinned by hash: Dockerfile:23","Warn: containerImage not pinned by hash: Dockerfile:65: pin your Docker image by updating alpine:3.20 to alpine:3.20@sha256:b3119ef930faabb6b7b976780c0c7a9c1aa24d0c75e9179ac10e6bc9ac080d0d","Warn: pipCommand not pinned by hash: .github/workflows/nightly.yml:156","Warn: pipCommand not pinned by hash: .github/workflows/release.yml:106","Info:   0 out of  46 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of  18 third-party GitHubAction dependencies pinned","Info:   0 out of   3 containerImage dependencies pinned","Info:   1 out of   1 npmCommand dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact 0.207.2 not signed: https://api.github.com/repos/evcc-io/evcc/releases/238852671","Warn: release artifact 0.207.1 not signed: https://api.github.com/repos/evcc-io/evcc/releases/237245392","Warn: release artifact 0.207.0 not signed: https://api.github.com/repos/evcc-io/evcc/releases/237051975","Warn: release artifact 0.206.1 not signed: https://api.github.com/repos/evcc-io/evcc/releases/236862083","Warn: release artifact 0.206.0 not signed: https://api.github.com/repos/evcc-io/evcc/releases/236199672","Warn: release artifact 0.207.2 does not have provenance: https://api.github.com/repos/evcc-io/evcc/releases/238852671","Warn: release artifact 0.207.1 does not have provenance: https://api.github.com/repos/evcc-io/evcc/releases/237245392","Warn: release artifact 0.207.0 does not have provenance: https://api.github.com/repos/evcc-io/evcc/releases/237051975","Warn: release artifact 0.206.1 does not have provenance: https://api.github.com/repos/evcc-io/evcc/releases/236862083","Warn: release artifact 0.206.0 does not have provenance: https://api.github.com/repos/evcc-io/evcc/releases/236199672"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/nightly.yml:34"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 20 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-18T16:37:15.422Z","repository_id":36953544,"created_at":"2025-08-18T16:37:15.422Z","updated_at":"2025-08-18T16:37:15.422Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29611002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-19T10:52:55.328Z","status":"ssl_error","status_checked_at":"2026-02-19T10:52:26.323Z","response_time":117,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["battery","charger","eebus","emobility","golang","home-automation","modbus","mqtt","ocpp","pv","semp","solar","sunspec","wallbox"],"created_at":"2024-08-03T01:01:46.116Z","updated_at":"2026-02-19T11:01:34.979Z","avatar_url":"https://github.com/evcc-io.png","language":"Go","funding_links":["https://github.com/sponsors/evcc-io"],"categories":["Go","Tools and Resources","Consumption","Table of Contents"],"sub_categories":["Charging Station Projects","Mobility and Transportation","Home Automation"],"readme":"# evcc 🚘☀️\n\n[![Build](https://github.com/evcc-io/evcc/actions/workflows/nightly.yml/badge.svg)](https://github.com/evcc-io/evcc/actions/workflows/nightly.yml)\n[![Translation](https://hosted.weblate.org/widgets/evcc/-/evcc/svg-badge.svg)](https://hosted.weblate.org/engage/evcc/)\n![Docker Pulls](https://img.shields.io/docker/pulls/evcc/evcc)\n[![OSS hosting by cloudsmith](https://img.shields.io/badge/OSS%20hosting%20by-cloudsmith-blue?logo=cloudsmith)](https://cloudsmith.io/~evcc/packages/)\n[![Latest Version](https://img.shields.io/github/release/evcc-io/evcc.svg)](https://github.com/evcc-io/evcc/releases)\u003cbr/\u003e\n[![Built with Depot](https://depot.dev/badges/built-with-depot.svg)](https://depot.dev/?utm_source=evcc)\n\nevcc is an extensible EV Charge Controller and home energy management system.\n\n![Screenshot](assets/github/screenshot.webp)\n\nOur goal is to provide local energy management, without relying on cloud services.\nFeatured in [PV Magazine](https://www.pv-magazine.de/2022/01/14/mit-open-source-lademanager-schnittstellen-zu-wallbox-und-photovoltaik-anlage-meistern/) and [c’t Magazin](https://www.youtube.com/watch?v=MoBpEXHMNjI).\n\n## Features\n\n- simple and clean user interface\n- support for many [EV chargers](https://docs.evcc.io/en/docs/devices/chargers):\n  - ABB, ABL, Alfen, Alphatec, Amperfied, Ampure, Audi, AUTEL, Autoaid, Bender, BMW, cFos, Charge Amps, Compleo, CUBOS, Cupra, Dadapower, DaheimLaden, Delta, E.ON Drive, E3/DC, Easee, Ebee, echarge, EcoHarmony, Edgetech, Elecq, eledio, Elli, EM2GO, EN+, enercab, Ensto, EntraTek, ESL, eSystems, Etrel, EVBox, Free2Move, Free2move eSolutions, Fronius, Garo, go-e, Hardy Barth, Heidelberg, Hesotec, Homecharge, Huawei, Innogy, INRO, Juice, Kathrein, KEBA, Kontron Solar, Kostal, KSE, LadeFoxx, LRT, Mennekes, NRGkick, OBO Bettermann, OpenEVSE, openWB, Optec, Orbis, PC Electric, Peblar, Phoenix Contact, Plugchoice, Porsche, Pracht, Pulsares, Pulsatrix, Qcells, Schneider, Schrack, SENEC, Siemens, Skoda, SMA, Smartfox, SolarEdge, Solax, Sonnen, Spelsberg, Stark in Strom, Sungrow, TechniSat, Tesla, Tigo, TinkerForge, Ubitricity, V2C Trydan, Vestel, Victron, Viridian EV, Volkswagen, Volt Time, Wallbe, wallbox, Walther Werke, Webasto, Weidmüller, Zaptec, ZJ Beny. [Read more.](https://docs.evcc.io/en/docs/devices/chargers)\n  - **EEBus** support (Elli, PMCC)\n  - **OCPP** support\n  - **build-your-own:** Phoenix Contact (includes ESL Walli), EVSE DIN\n  - **smart switches:** AVM, FRITZ!, Home Assistant, Homematic IP, HomeWizard, myStrom, Shelly, Tasmota, TP-Link. [Read more.](https://docs.evcc.io/en/docs/devices/smartswitches)\n  - **heat pumps and electric heaters:** alpha innotec, Bosch, Buderus, Bösch, CTA All-In-One, Daikin, Elco, IDM, Junkers, Kermi, Lambda, my-PV, Nibe, Novelan, Roth, Stiebel Eltron, Tecalor, Vaillant, Viessmann, Wolf, Zewotherm. [Read more.](https://docs.evcc.io/en/docs/devices/heating)\n- support for many [energy meters](https://docs.evcc.io/en/docs/devices/meters):\n  - **solar inverters and battery systems:** A-Tronix, Acrel, Ads-tec, Alpha ESS, Ampere, Anker, APsystems, AVM, Axitec, BGEtech, Bosch, Bosswerk, Carlo Gavazzi, Deye, E3/DC, Eastron, Enphase, FENECON, FRITZ!, FoxESS, Fronius, Ginlong, go-e, GoodWe, Growatt, Homematic IP, HomeWizard, Hoymiles, Huawei, IAMMETER, IGEN Tech, Kostal, LG, Loxone, M-TEC, Marstek, myStrom, OpenEMS, Powerfox, Qcells, RCT, SAJ, SAX, SENEC, Senergy, Shelly, Siemens, Sigenergy, SMA, Smartfox, SofarSolar, Solaranzeige, SolarEdge, SolarMax, Solarwatt, Solax, Solinteng, Sonnen, St-ems, Steca, Sungrow, Sunsynk, Sunway, Tasmota, Tesla, TP-Link, VARTA, Victron, Wattsonic, Youless, ZCS Azzurro, Zendure. [Read more.](https://docs.evcc.io/en/docs/devices/meters)\n  - **general energy meters:** A-Tronix, ABB, Acrel, Alpha ESS, Ampere, AVM, Axitec, Bernecker Engineering, BGEtech, Bosch, Carlo Gavazzi, cFos, Deye, DSMR, DZG, E3/DC, Eastron, Enphase, ESPHome, FENECON, FoxESS, FRITZ!, Fronius, Ginlong, go-e, GoodWe, Growatt, Homematic IP, HomeWizard, Huawei, IAMMETER, inepro, IOmeter, Janitza, KEBA, Kostal, LG, Loxone, M-TEC, mhendriks, my-PV, myStrom, OpenEMS, ORNO, P1Monitor, Powerfox, Qcells, RCT, Saia-Burgess Controls (SBC), SAJ, SAX, Schneider Electric, SENEC, Shelly, Siemens, Sigenergy, SMA, Smartfox, SofarSolar, Solaranzeige, SolarEdge, SolarMax, Solarwatt, Solax, Solinteng, Sonnen, St-ems, Sungrow, Sunsynk, Sunway, Tasmota, Tesla, Tibber, TQ, VARTA, Victron, Volkszähler, Wago, Wattsonic, Weidmüller, Youless, ZCS Azzurro, Zuidwijk. [Read more.](https://docs.evcc.io/en/docs/devices/meters)\n  - **integrated systems**: SMA Sunny Home Manager and Energy Meter, KOSTAL Smart Energy Meter (KSEM, EMxx)\n  - **sunspec**-compatible inverter or home battery devices\n  - **mbmd**-compatible devices, see [volkszaehler/mbmd](https://github.com/volkszaehler/mbmd#supported-devices) for a complete list\n- [vehicle](https://docs.evcc.io/en/docs/devices/vehicles) integrations (state of charge, remote charge, battery and preconditioning status):\n  - Aiways, Audi, BMW, Citroën, Dacia, DS, Fiat, Ford, Hyundai, Jeep, Kia, Mercedes-Benz, MG, Mini, Nissan, NIU, Opel, Peugeot, Polestar, Renault, Seat, Skoda, Smart, Subaru, Tesla, Toyota, Volkswagen, Volvo, Zero Motorcycles. [Read more.](https://docs.evcc.io/en/docs/devices/vehicles)\n  - **services:** OVMS, Tronity, evNotify, ioBroker.bmw, mg2mqtt, mz2mqtt, TeslaLogger, TeslaMate, Tessi, volvo2mqtt\n- [plugins](https://docs.evcc.io/en/docs/devices/plugins) for integrating with any charger, smartswitch, heatpump, electric heater, meter, solar- / battery-inverter or vehicle:\n  - Modbus, HTTP, MQTT, JavaScript, WebSocket, Go and shell scripts\n- status [notifications](https://docs.evcc.io/en/docs/reference/configuration/messaging) using [Telegram](https://telegram.org), [PushOver](https://pushover.net) and [many more](https://containrrr.dev/shoutrrr/)\n- logging using [InfluxDB](https://www.influxdata.com) and [Grafana](https://grafana.com/grafana/)\n- [REST](https://docs.evcc.io/en/docs/integrations/rest-api) and [MQTT](https://docs.evcc.io/en/docs/integrations/mqtt-api) APIs for integration with home automation systems\n- Add-ons for [Home Assistant](https://docs.evcc.io/en/docs/integrations/home-assistant) and [openHAB](https://www.openhab.org/addons/bindings/evcc) (not maintained by the evcc core team)\n\n## Getting Started\n\nYou'll find everything you need in our [documentation](https://docs.evcc.io/en/).\n\n## Contributing\n\nTechnical details on how to contribute, how to add translations and how to build evcc from source can be found [here](CONTRIBUTING.md).\n\n[![Weblate Hosted](https://hosted.weblate.org/widgets/evcc/-/evcc/287x66-grey.png)](https://hosted.weblate.org/engage/evcc/)\n\n## Sponsorship\n\n\u003cimg src=\"assets/github/evcc-gopher.png\" align=\"right\" width=\"150\" /\u003e\n\nevcc believes in open source software. We're committed to provide best in class EV charging experience.\nMaintaining evcc consumes time and effort. With the vast amount of different devices to support, we depend on community and vendor support to keep evcc alive.\n\nWhile evcc is open source, we would also like to encourage vendors to provide open source hardware devices, public documentation and support open source projects like ours that provide additional value to otherwise closed hardware. Where this is not the case, evcc requires \"sponsor token\" to finance ongoing development and support of evcc.\n\nLearn more about our [sponsorship model](https://docs.evcc.io/en/docs/sponsorship).\n\n## License\n\nThis project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.\n\nFor additional license information regarding fonts, icons, and other assets, please see the [LICENSES](LICENSES/) folder.\n\n**Note:** All sponsor-required components are excluded from the MIT License.\nSee file license header for details.\nIf you want to use them in your own project, one evcc sponsorship token is required per evcc instance.\nCustom licensing agreements are available - please [contact us](mailto:info@evcc.io) to discuss your specific requirements.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fevcc-io%2Fevcc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fevcc-io%2Fevcc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fevcc-io%2Fevcc/lists"}