Skip to content

Latest commit

 

History

History
97 lines (62 loc) · 3.66 KB

README.md

File metadata and controls

97 lines (62 loc) · 3.66 KB

LCN Frontend

Buy Me A Coffee

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.

Features

  • Device Configuration Device Configuration

    • 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.
  • Entity Configuration Entity Configuration

    • 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.

Development

Setting up the development environment

  • 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 installing node.js. Install nvm using the instructions provided here. Install the correct node.js version by running the following command in the root directory of your checkout working tree.

$ nvm install
$ make bootstrap
$ yarn install

Building the frontend

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

Preparing the frontend

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 the home-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>

Starting Home Assistant

Start Home Assistant using:

$ hass -c config

Code quality

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