smart-home-engine 0.16.1 → 0.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +21 -35
- package/dist/web/assets/index-CygE8hzz.js +225 -0
- package/dist/web/assets/index-ZA04d_Jz.css +1 -0
- package/dist/web/assets/jsonMode-CXWNuhmR.js +15 -0
- package/dist/web/assets/{monaco-langs-Decdf6BV.js → monaco-langs-BW2J83t5.js} +250 -269
- package/dist/web/assets/{tsMode-haf4UX72.js → tsMode-DJvlYckS.js} +1 -1
- package/dist/web/index.html +4 -3
- package/dist/web/monacoeditorwork/json.worker.bundle.js +21320 -0
- package/package.json +1 -1
- package/src/index.js +27 -6
- package/src/sandbox/matter-sandbox.js +6 -3
- package/src/sandbox/shedb-sandbox.js +5 -2
- package/src/sandbox/stdlib.js +3 -3
- package/src/web/prompts/db-view.md +4 -2
- package/src/web/server.js +53 -2
- package/dist/web/assets/index-6fsqE5Vy.css +0 -1
- package/dist/web/assets/index-CBKdN3z6.js +0 -220
package/README.md
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
# she - smart home engine
|
|
2
2
|
|
|
3
|
-
[![License][mit-badge]][mit-url]
|
|
4
|
-
|
|
5
3
|
> [!WARNING]
|
|
6
4
|
> **This project is under heavy development.** The API is changing frequently and there are no stability guarantees yet.
|
|
7
5
|
|
|
@@ -19,19 +17,14 @@ Your home, your rules - written in plain JavaScript.
|
|
|
19
17
|
- Supports **InfluxDB**, **Elasticsearch** and **Redis** — convenience methods for time series, full text indexing, shared states across multiple she instances
|
|
20
18
|
- **Web UI** — script editor, package manager, MQTT browser, Matter device manager, sheDB frontend, log viewer
|
|
21
19
|
|
|
22
|
-
##
|
|
23
|
-
|
|
24
|
-
She is built around a simple idea: home automation should stay understandable, even as it grows. Instead of collecting adapters, bindings, integrations, and configuration layers, you work directly with devices, events, and logic. The result is a system that scales with your home without turning into a project of its own.
|
|
25
|
-
|
|
26
|
-
At some point every smart home platform starts promising simplicity and ends up teaching you its own ecosystem. She takes a different approach. It's built around devices, messages, and automation logic - not around ever-growing collections of adapters, bindings, and abstractions.
|
|
27
|
-
|
|
28
|
-
Spend your time automating your home, not maintaining your automation software. Less clicking through configuration screens, fewer plugins talking to plugins, and no need for YAML archaeology when something stops working. Just a straightforward path from devices to automations, built on open standards and designed for people who prefer understanding their system over managing it.
|
|
29
|
-
|
|
30
|
-
The ideas behind **she** are the result of more than a decade of building smart home software. I started publishing home automation projects on GitHub in 2012 with ccu.io and later initiated the ioBroker project before leaving it in 2014. Around the same time, I created [mqtt-scripts](https://github.com/hobbyquaker/mqtt-scripts), which has been running my own home automation ever since. Over the years I have continued working professionally in the smart home industry.
|
|
20
|
+
## Quick start
|
|
31
21
|
|
|
32
|
-
|
|
22
|
+
```bash
|
|
23
|
+
npm install -g smart-home-engine
|
|
24
|
+
she
|
|
25
|
+
```
|
|
33
26
|
|
|
34
|
-
|
|
27
|
+
Then open **http://localhost:8080** and start creating scripts
|
|
35
28
|
|
|
36
29
|
## Docs
|
|
37
30
|
|
|
@@ -43,38 +36,31 @@ The goal is simple: a smart home that remains understandable years later. No mig
|
|
|
43
36
|
| [HTTP API](doc/http-api.md) | REST endpoints and WebSocket |
|
|
44
37
|
| [sheDB](doc/db/README.md) | Embedded document store — script API, views, examples |
|
|
45
38
|
| [Examples](doc/examples.md) | Real-world script patterns |
|
|
46
|
-
| [Screenshots](doc/screenshots.md) | Web UI screenshots |
|
|
47
39
|
|
|
48
|
-
##
|
|
40
|
+
## Trademark and Certification Notices
|
|
49
41
|
|
|
50
|
-
|
|
51
|
-
|
|
42
|
+
> [!IMPORTANT]
|
|
43
|
+
> This project implements/supports the Matter protocol. Matter™ is a trademark of the Connectivity Standards Alliance.
|
|
44
|
+
>
|
|
45
|
+
> This project is **not** certified by, endorsed by, supported by, or affiliated with the Connectivity Standards Alliance.
|
|
52
46
|
|
|
53
|
-
|
|
54
|
-
she.mqtt.sub('home/hall/motion', { change: true }, (topic, val) => {
|
|
55
|
-
she.mqtt.set('home/hall/light', val);
|
|
56
|
-
});
|
|
47
|
+
## Quick look
|
|
57
48
|
|
|
58
|
-
|
|
59
|
-
she.schedule('sunset', () => she.mqtt.set('home/lights/outdoor', 1));
|
|
60
|
-
she.schedule('sunrise', () => she.mqtt.set('home/lights/outdoor', 0));
|
|
49
|
+
 [... more screenshots](doc/screenshots.md)
|
|
61
50
|
|
|
62
|
-
|
|
63
|
-
she.db.set('hall/motion', { name: 'Hall PIR', location: 'hall' });
|
|
64
|
-
```
|
|
51
|
+
## Motivation
|
|
65
52
|
|
|
66
|
-
|
|
53
|
+
She is built around a simple idea: home automation should stay understandable, even as it grows. Instead of collecting adapters, bindings, integrations, and configuration layers, you work directly with devices, events, and logic. The result is a system that scales with your home without turning into a project of its own.
|
|
67
54
|
|
|
68
|
-
|
|
69
|
-
npm install -g smart-home-engine
|
|
70
|
-
she
|
|
71
|
-
```
|
|
55
|
+
At some point every smart home platform starts promising simplicity and ends up teaching you its own ecosystem. She takes a different approach. She's built around devices, messages, and automation logic - not around ever-growing collections of adapters, bindings, and abstractions.
|
|
72
56
|
|
|
73
|
-
|
|
57
|
+
Spend your time automating your home, not maintaining your automation software. Less clicking through configuration screens, fewer plugins talking to plugins, and no need for YAML archaeology when something stops working. Just a straightforward path from devices to automations, built on open standards and designed for people who prefer understanding their system over managing it.
|
|
58
|
+
|
|
59
|
+
The ideas behind **she** are the result of more than a decade of building smart home software. I started publishing home automation projects on GitHub in 2012 with ccu.io and later initiated the ioBroker project before leaving it in 2014. Shortly after I worked on [mqtt-smarthome](https://github.com/mqtt-smarthome/mqtt-smarthome) and created [mqtt-scripts](https://github.com/hobbyquaker/mqtt-scripts), which has been running my own home automation ever since. Over the years I have continued working professionally in the smart home industry.
|
|
74
60
|
|
|
75
|
-
|
|
61
|
+
Recently, while experimenting with GitHub Copilot, I started modernizing parts of my existing software stack. What began as a small refactoring exercise quickly evolved into a bigger idea: replacing my twelve-year-old automation engine with a modern successor. The result is **she** - a combination of the proven concepts from mqtt-scripts, the architecture of mqttDB, a built-in Matter controller and a modern web interface with AI assistance. A system that embraces open standards, integrates the growing Matter ecosystem, and remains true to the principles that made mqtt-scripts reliable enough to run a home for more than a decade.
|
|
76
62
|
|
|
77
|
-
|
|
63
|
+
The goal is simple: a smart home that remains understandable years later. No migration-guide marathons, no plugin jungles. Just automation infrastructure that grows with your home instead of growing into a hobby of its own.
|
|
78
64
|
|
|
79
65
|
## License
|
|
80
66
|
|