|
| 1 | +--- |
| 2 | +layout: page |
| 3 | +title: "Configurator" |
| 4 | +description: "Browser-based configuration file editor for Home Assistant." |
| 5 | +date: 2017-09-25 14:00 |
| 6 | +sidebar: true |
| 7 | +comments: false |
| 8 | +sharing: true |
| 9 | +footer: true |
| 10 | +--- |
| 11 | + |
| 12 | +As long as a fully featured configuration GUI for Home Assistant is still under development, you can use this add-on to add a browser based file-editor to your Hass.IO installation. By default it will listen on port `3218` of the host Hass.IO is running on. |
| 13 | +More information and a standalone version for regular Home Assistant installations can be found in the original repository at https://github.com/danielperna84/hass-configurator. |
| 14 | + |
| 15 | + |
| 16 | + |
| 17 | +### {% linkable_title Feature list %} |
| 18 | + |
| 19 | +- Web-Based editor to modify your files with syntax highlighting. |
| 20 | +- Upload and download files. |
| 21 | +- Stage and commit changes in Git repositories, create and switch between branches, push to remotes. |
| 22 | +- Lists of available triggers, events, entities, conditions and services. Selected element gets inserted into the editor at the last cursor position. |
| 23 | +- Restart Home Assitant directly with the click of a button. Reloading groups, automations etc. can be done as well. An API-password is required. |
| 24 | +- SSL support. |
| 25 | +- Optional authentication and IP filtering for added security. |
| 26 | +- Direct links to Home Assistant documentation and icons. |
| 27 | +- Execute shell commands within the add-on container. |
| 28 | +- Modified editor settings can be saved using [localStorage](https://developer.mozilla.org/en-US/docs/Web/API/Window/localStorage). |
| 29 | + |
| 30 | +### {% linkable_title Add-on Configuration %} |
| 31 | + |
| 32 | +```json |
| 33 | +{ |
| 34 | + "homeassistant_api": "http://homeassistant:8123/api", |
| 35 | + "homeassistant_password": "", |
| 36 | + "credentials": "admin:secret", |
| 37 | + "certfile": "fullchain.pem", |
| 38 | + "keyfile": "privkey.pem", |
| 39 | + "ssl": false, |
| 40 | + "allowed_networks": ["192.168.0.0/16"], |
| 41 | + "banned_ips": ["8.8.8.8"], |
| 42 | + "ignore_pattern": ["__pycache__"] |
| 43 | +} |
| 44 | +``` |
| 45 | + |
| 46 | +- **homeassistant_api** (*Optional*): The configurator fetches some data from your running Home Assistant instance. If the API is not available through the default URL, modify this variable to fix this. |
| 47 | +- **homeassistant_password** (*Optional*): If you plan on using API functions, you have to set your API password. Calling services of Home Assistant is prohibited without authentication. |
| 48 | +- **credentials** (*Optional*): Set credentials in the form of `"username:password"` so access to your configuration is protected. |
| 49 | +- **ssl** (*Optional*): Enable or Disable SSL for the editor. |
| 50 | +- **allowed_networks** (*Optional*): Limit access to the configurator by adding allowed IP addresses / networks to the list. |
| 51 | +- **banned_ips** (*Optional*): List of statically banned IP addresses. |
| 52 | +- **ignore_pattern** (*Optional*): Files and folders to ignore in the UI. |
| 53 | + |
| 54 | +### {% Embedding into Home-Assistant %} |
| 55 | +Home Assistant has the [panel_iframe](https://home-assistant.io/components/panel_iframe/) component. With this it is possible to embed the configurator directly into Home Assistant, allowing you to modify your configuration within the Home Assistant frontend. |
| 56 | +An example configuration would look like this: |
| 57 | + |
| 58 | +```yaml |
| 59 | +panel_iframe: |
| 60 | + configurator: |
| 61 | + title: Configurator |
| 62 | + icon: mdi:wrench |
| 63 | + url: http://hassio.local:3218 |
| 64 | +``` |
| 65 | +
|
| 66 | +<p class='note'> |
| 67 | +Be careful when setting up port forwarding to the configurator while embedding into Home Assistant. If you don't restrict access by requiring authentication and / or blocking based on client IP addresses, your configuration will be exposed to the internet! |
| 68 | +</p> |
0 commit comments