Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nioc/vue-dom
Web front end for the home automation software Jeedom
https://github.com/nioc/vue-dom
home-automation jeedom vuejs
Last synced: 24 days ago
JSON representation
Web front end for the home automation software Jeedom
- Host: GitHub
- URL: https://github.com/nioc/vue-dom
- Owner: nioc
- License: agpl-3.0
- Created: 2020-04-05T15:11:04.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2024-09-11T23:12:34.000Z (2 months ago)
- Last Synced: 2024-10-11T01:45:14.022Z (about 1 month ago)
- Topics: home-automation, jeedom, vuejs
- Language: Vue
- Homepage: https://nioc.github.io/vue-dom/
- Size: 9.89 MB
- Stars: 4
- Watchers: 3
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
Awesome Lists containing this project
README
# ![](/docs/icon.png) Vue-dom
[![license: AGPLv3](https://img.shields.io/badge/license-AGPLv3-blue.svg)](https://www.gnu.org/licenses/agpl-3.0)
[![GitHub release](https://img.shields.io/github/release/nioc/vue-dom.svg)](https://github.com/nioc/vue-dom/releases/latest)
[![GitHub downloads](https://img.shields.io/github/downloads/nioc/vue-dom/total?label=github%20downloads)](https://github.com/nioc/vue-dom/releases/latest)
[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/nioc/vue-dom/build-release.yml?label=build%20status)](https://github.com/nioc/vue-dom/actions/workflows/build-release.yml)
[![Docker Pulls](https://img.shields.io/docker/pulls/nioc/vue-dom)](https://hub.docker.com/r/nioc/vue-dom/tags)
[![Docker Image Size (latest by date)](https://img.shields.io/docker/image-size/nioc/vue-dom?sort=date)](https://hub.docker.com/r/nioc/vue-dom/tags)Vue-dom is a web front end for home automation software (currently only support [Jeedom](https://www.jeedom.com)).
## Key features
- display rooms with summary,
- display room with logical equipments,
- display logical equipments by tags,
- display info statistics (min, average and max) and history chart,
- display and start scenarios,
- display system notifications,
- ask query (interaction),
- user authentication with login and password (not stored in application),
- communicate with your back-end software through JSON-RPC API and [websocket](https://github.com/nioc/jeedom-websocket), authorized with user API key,
- reduce data traffic,
- responsive,
- progressive web app (offline access).Check out the [live demo](https://nioc.github.io/vue-dom/) (since using mock data, there is no effective action and inconsistencies may occur).
## Installation
### As a local Apache/Nginx virtual host
For basic use, you just have to:
- download [latest release](https://github.com/nioc/vue-dom/releases/latest) archive,
- unarchive in `/var/www/vue-dom/`,
- add following lines in Apache virtual hosts `/etc/apache2/sites-enabled/default-ssl.conf` and `/etc/apache2/sites-enabled/000-default.conf`, inside `` section:
``` conf
alias /vue-dom/ /var/www/vue-dom/
Options -Indexes -FollowSymLinks -MultiViews -ExecCGI
AllowOverride none
Order allow,deny
allow from all
```- set your back end (Jeedom) url in `/var/www/vue-dom/local.js`.
### As docker container
If you are using Docker, you can pull the [Docker image](https://hub.docker.com/r/nioc/vue-dom) and run with your own url:
```
docker run -p 80:80 --rm \
-e TITLE="VueDom - Home" \
-e PROVIDER="system: 'jeedom', jsonRpcApiUrl: 'https://192.168.1.50/core/api/jeeApi.php', websocketUrl: 'wss://192.168.1.50/socket/', statisticsPeriod: 86400000, trendPeriod: 7200000, trendThreshold: 0.1," \
-e COMPONENTS="SynologyRouterManager: 'SynologyRouterManager', NetatmoSecurity: 'NetatmoSecurity'," \
--name vue-dom-1 \
nioc/vue-dom:latest
```Or run service in a `docker-compose.yml` file:
``` yml
version: "3.4"
services:
vue-dom:
image: nioc/vue-dom:latest
ports:
- "80:80"
environment:
TITLE: VueDom - Home
PROVIDER: "system: 'jeedom', jsonRpcApiUrl: 'https://192.168.1.50/core/api/jeeApi.php', websocketUrl: 'wss://192.168.1.50/socket/', statisticsPeriod: 86400000, trendPeriod: 7200000, trendThreshold: 0.1,"
COMPONENTS: "SynologyRouterManager: 'SynologyRouterManager', NetatmoSecurity: 'NetatmoSecurity',"
```For more advanced use (adding your own component, style, ...), you have to follow the [contributing guide](CONTRIBUTING.md) and edit Vue code.
## Versioning
Vue-dom is maintained under the [semantic versioning](https://semver.org/) guidelines.
See the [releases](https://github.com/nioc/vue-dom/releases) on this repository for changelog.
## Contributing
If you have a suggestion for a feature you think would enhance this product, please submit a [feature request](https://github.com/nioc/vue-dom/issues/new?labels=enhancement&template=feature_request.md).
Pull requests are welcomed. See [contributing](CONTRIBUTING.md).## Credits
* **[Nioc](https://github.com/nioc/)** - *Initial work*
See also the list of [contributors](https://github.com/nioc/vue-dom/contributors) to this project.
This project is powered by the following components:
- [VueJS](https://vuejs.org/) (MIT)
- [Bulma](https://bulma.io/) (MIT)
- [Oruga UI](https://oruga.io/) (MIT)
- [Font Awesome](https://fontawesome.com/) (Font Awesome Free License)
- [axios](https://axios-http.com/) (MIT)
- [normalizr](https://github.com/paularmstrong/normalizr) (MIT)
- [Chart.js](https://www.chartjs.org/) (MIT)
- [Pinia](https://pinia.vuejs.org/) (MIT)
- [date-fns](https://date-fns.org/) (MIT)
- [TinyDuration](https://github.com/MelleB/tinyduration/) (MIT)
- [Video.js](https://videojs.com/) (Apache License)
- [D3.js](https://d3js.org/) (ISC)
- [vue-draggable-next](https://github.com/anish2690/vue-draggable-next/) (MIT)## License
This project is licensed under the GNU Affero General Public License v3.0 - see the [LICENSE](LICENSE.md) file for details