{"id":13896543,"url":"https://github.com/javalikescript/lha","last_synced_at":"2025-07-17T12:34:20.852Z","repository":{"id":39912998,"uuid":"177026608","full_name":"javalikescript/lha","owner":"javalikescript","description":"light home automation application","archived":false,"fork":false,"pushed_at":"2024-07-14T07:22:20.000Z","size":660,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-08-07T18:39:58.092Z","etag":null,"topics":["blockly","home-automation","iot","lua","mqtt","raspberry-pi","webthings","zigbee","zwave"],"latest_commit_sha":null,"homepage":"","language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/javalikescript.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-03-21T21:30:19.000Z","updated_at":"2024-07-14T07:22:23.000Z","dependencies_parsed_at":"2023-12-17T10:24:32.179Z","dependency_job_id":"50440882-c885-400d-a131-162b12fb2b1b","html_url":"https://github.com/javalikescript/lha","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javalikescript%2Flha","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javalikescript%2Flha/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javalikescript%2Flha/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/javalikescript%2Flha/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/javalikescript","download_url":"https://codeload.github.com/javalikescript/lha/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":226265521,"owners_count":17597222,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["blockly","home-automation","iot","lua","mqtt","raspberry-pi","webthings","zigbee","zwave"],"created_at":"2024-08-06T18:02:59.831Z","updated_at":"2025-07-17T12:34:20.833Z","avatar_url":"https://github.com/javalikescript.png","language":"Lua","readme":"lha is a light home automation application\n\n## Overview\n\nThe lha application allows to\n* enrich your existing gateway such as the [Hue](https://www.philips-hue.com/) bridge\n* record and display historical device values such as temperature\n* interact between incompatible protocols such as _ZigBee_ and _Z-Wave_\n* compose advanced automations using [Blockly](https://developers.google.com/blockly/) scripts\n* design web views using [HTML](https://html.spec.whatwg.org/) and [Vue.js](https://v2.vuejs.org/)\n* create your own [Lua](https://www.lua.org/) extensions\n\nThe lha engine manages the extensions including scripts, the things, the scheduler and a web server.\nThe engine records thing property values in dedicated time based log files.\n\nIt is a pure [Lua](https://www.lua.org/) single process application built around a scheduler and an HTTP server based on [luajls](https://github.com/javalikescript/luajls).\nIt exposes a Thing Description JSON API, see [Web of Things](https://www.w3.org/WoT/).\n\nThe lha application could be run on small computers such as the _Raspberry PI_ or the _WD MyCloud_.\nIt could also be run on any _Linux_ distribution or _Windows_.\nThe application is small, around 5MB, and does not need any dependency.\n\n## Extensions\n\nlha comes with a bunch of core extensions and allows to add new ones.\n\nSee details of [extensions](extensions.md)\n\n## Devices\n\nAny device available through ConBee, Hue or Z-Wave JS could be added by enhancing the extension JSON mapping files.\n\nSee list of already available [devices](devices.md)\n\n## Screenshots\n\nThe web base pages.  \n![tiles](https://github.com/user-attachments/assets/398653c6-2f51-4c8d-a72e-d73043a6b0d3)\n![extensions](https://github.com/user-attachments/assets/b879bb4e-8aeb-4d22-8a25-b1f36617f45a)\n![things](https://github.com/user-attachments/assets/26904e22-7801-43fc-a789-224a6f43497c)\n\nA chart of temperature sensor.  \n![chart](https://github.com/user-attachments/assets/946a697c-652a-4f3a-b86c-11e679955633)\n\nAn example of script to send a SMS on an intrusion.  \n![script](https://github.com/user-attachments/assets/5be2ba32-8c52-4132-acfb-b2f1f7d1c755)\n\nCustom views.  \n![kiosk](https://github.com/user-attachments/assets/69ee4525-a937-4e17-b8ed-56663eaaa8da)\n![power](https://github.com/user-attachments/assets/60834f38-34b7-4c7b-b535-d51146cf5c83)\n![temp](https://github.com/user-attachments/assets/287bc36a-87d9-4e67-afe7-52f9e017365e)\n\n## Setup\n\nDownload the [latest](https://github.com/javalikescript/lha/releases/latest) release corresponding to your target OS.\nUnzip the archive and launch the engine using `bin/lua lha.lua -ll info`\n\nOpen the web interface in a browser.\nGo to the extension section to add and configure your extensions.\n\nNote that you will need to provide an authorized user to use the ConBee or Hue bridge.\n\n## Dependencies\n\nThe lha release includes web extensions using the following libraries:\n* \"vuejs\" is licensed under the MIT License see https://vuejs.org/  \n*Reactive, component-oriented view layer for modern web interfaces*\n* \"blockly\" is licensed under the Apache License 2.0 see https://developers.google.com/blockly/  \n*Blockly is a library from Google for building beginner-friendly block-based programming languages*\n* \"Chart.js\" is licensed under the MIT License see http://chartjs.org/  \n*Simple yet flexible JavaScript charting for designers \u0026 developers*\n* \"Moment.js\" is licensed under the MIT License see https://momentjs.com/  \n*Parse, validate, manipulate, and display dates and times in JavaScript*\n* \"Font Awesome Free\" is licensed under multiple licenses see https://fontawesome.com/license/free  \n*The iconic font and CSS framework*\n* \"fetch\" is licensed under the MIT license see https://github.com/github/fetch/releases\n* \"promise\" is licensed under the MIT license see https://github.com/taylorhakes/promise-polyfill\n","funding_links":[],"categories":["Software","Lua"],"sub_categories":["Internet of Things (IoT)"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjavalikescript%2Flha","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjavalikescript%2Flha","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjavalikescript%2Flha/lists"}