Energy Assistant is a free, opensource Energy Management System which works together with Home Assistant and Evcc.
Energy Assistant is using Emhass in order to optimize the energy consumption of your house.
Documentation and support
For issues, please go to the issue tracker.
For feature requests, please see feature requests.
By far the most convenient way to run the Energy Assistant is to install the Energy Assistant Add-on:
- Add the Energy Assistant repository to your Home Assistant instance.
- Install the Energy Assistant add-on.
An alternative way to run the Energy Assistant is by running the docker image:
Copy the energy_assistant.yaml.dist
file to energy_assistant.yaml
and modify it to match your setup and then start the docker container in the same folder.
docker run --name em -p 8080:5000 -v "$(pwd)/energy_assistant.yaml:/config/energy_assistant.yaml" ghcr.io/pail23/energy-assistant-server:latest
Please find information on how to configure Energy Assistant here.
Please consult the user documentation for Energy Assistant.
The easiest way to get started with development is to use Visual Studio Code with devcontainers. This approach will create a preconfigured development environment with all the tools you need. This approach is enabled for the Energy Assistant frontend and the Energy Assistant backend repository. Learn more about devcontainers.
Getting started:
- Go to Energy Assistant backend repository and click "fork".
- Clone the forked repository locally (git clone ...)
- Open the devcontainer in VSCode
- Copy
energy_assistan.yaml.dist
toenergy_assistan.yaml
and configure your setup (e.g. connection to Home Assistant) - Press F5 to start Energy Assistant
- Go to Energy Assistant frontend repository and click "fork".
- Clone the forked repository locally (git clone ...)
- Open the devcontainer in VSCode
- Enter
yarn install
and thenyarn dev
in the Terminal of VSCode
Useful commands:
./scripts/lint.sh
run the linter to check the code quality.
./scripts/create-dev-db.sh
create a new database in the root folder of the project.