This repository contains the frontend files for the Home Assistant LCN configuration panel.
A detailed guide can be found in the documentation.
Feel free to use the issue tracker to report bugs, give feetback or share ideas for improvements.
If you want to participate in development (great!) head down to the development section.
-
Set up modules and groups for all your LCN integrations.
-
Search for modules and groups and have them added automatically.
-
Select a module or group to access the respective Entity Configuration panel.
-
Set up Home Assistant entities for each module or group.
-
Create new entities that map the functions of your LCN modules and configure their parameters.
-
New entities are automatically added to your Home Assistant configuration and you can add them to your dashboards just like for any other integration.
-
To display and test the frontend during development, you need to prepare a Home Assistant development environment. For this it is recommended to follow the instructions here.
-
You need to have
node.js
installed to build the frontend. Using nvm is the preferred method of installingnode.js
. Install nvm using the instructions provided here. Install the correctnode.js
version by running the following command in the root directory of your checkout working tree.
$ nvm install
-
The
lcn-frontend
uses Yarn as a package manager for node modules. Install yarn using the instructions here.. -
Next is to prepare the submodules and install all node packages. To do this, run the following commands
$ make bootstrap
$ yarn install
During development use the following command to build the frontend automatically whenever you make code changes:
$ make develop
A production build can be created by issuing:
$ make build
Next is to symlink the build directory lcn_frontend
into the Home Assistant configuration directory:
$ ln -s <lcn-frontend-dir>/lcn_frontend <hass-dir>/config/deps/lib/python3.xx/site-packages/
<lcn-frontend-dir>
is the root working directory of the repository's checkout directory<hass-dir>
is the root working directory of thehome-assistant-core
repository's checkout directory
The <hass-dir>/config
directory is created when first starting Home Assistant. Usually you have to create the mentioned sub-paths by your own. Use the appropriate Home Assistant's Python version in the path.
Alternatively, if you are working with a venv install:
export PYTHONPATH=<lcn-frontend-dir>
Start Home Assistant using:
$ hass -c config
Replace [commit_id]
with the desired commit or tag name.
$ cd homeassistant-frontend
$ git fetch
...
$ git checkout [commit_id]
...
$ cd ..
$ rm -f yarn.lock
$ node ./script/merge_requirements.js
...
$ make bootstrap
$ yarn install
You may use the following commands to ensure code quality:
- Code formatting:
yarn run format
- Code linting:
yarn run lint
- Type linting:
yarn run lint:types