matterbridge 3.0.8-dev-20250622-9a6255a → 3.0.8-dev-20250624-5abb0bb
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/CHANGELOG.md +4 -2
- package/README-DEV.md +27 -11
- package/README.md +11 -11
- package/npm-shrinkwrap.json +9 -8
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -16,7 +16,7 @@ If you like this project and find it useful, please consider giving it a star on
|
|
|
16
16
|
|
|
17
17
|
- [DevContainer]: Added support for the **Matterbridge Dev Container** with an optimized named volume for `node_modules`.
|
|
18
18
|
- [GitHub]: Added GitHub issue templates for bug reports and feature requests.
|
|
19
|
-
- [Systemd]: Added a systemd service file for Matterbridge.
|
|
19
|
+
- [Systemd]: Added a systemd service file for Matterbridge in the systemd directory.
|
|
20
20
|
- [ESLint]: Refactored ESLint configuration for TypeScript and improved plugin integration.
|
|
21
21
|
- [ESLint]: Added the plugins `eslint-plugin-promise`, `eslint-plugin-jsdoc`, and `@vitest/eslint-plugin`.
|
|
22
22
|
- [Vitest]: Added Vitest for TypeScript project testing. It will replace Jest, which does not work correctly with ESM module mocks.
|
|
@@ -24,8 +24,10 @@ If you like this project and find it useful, please consider giving it a star on
|
|
|
24
24
|
|
|
25
25
|
### Changed
|
|
26
26
|
|
|
27
|
-
- [package]: Updated
|
|
27
|
+
- [package]: Updated package to Automator v. 2.0.0.
|
|
28
|
+
- [package]: Updated dependencies.
|
|
28
29
|
- [storage]: Bumped `node-storage-manager` to 2.0.0.
|
|
30
|
+
- [logger]: Bumped `node-ansi-logger` to 3.1.1.
|
|
29
31
|
|
|
30
32
|
### Fixed
|
|
31
33
|
|
package/README-DEV.md
CHANGED
|
@@ -18,13 +18,13 @@
|
|
|
18
18
|
|
|
19
19
|
The easiest way is to clone the [Matterbridge Plugin Template](https://github.com/Luligu/matterbridge-plugin-template) that has **Dev Container support for instant development environment** and all tools and extensions (like Node.js, npm, TypeScript, ESLint, Prettier, Jest and Vitest) already loaded and configured.
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
After you clone it locally, change the name (keep always matterbridge- at the beginning of the name), version, description, author, homepage, repository, bugs and funding in the package.json.
|
|
22
22
|
|
|
23
|
-
It is possible to add two custom properties to the package.json: **help** and **changelog** with a url that will be used in the frontend instead of the default (/blob/main/README.md and /blob/main/CHANGELOG.md).
|
|
23
|
+
It is also possible to add two custom properties to the package.json: **help** and **changelog** with a url that will be used in the frontend instead of the default (/blob/main/README.md and /blob/main/CHANGELOG.md).
|
|
24
24
|
|
|
25
25
|
Add your plugin logic in module.ts.
|
|
26
26
|
|
|
27
|
-
The Matterbridge Plugin Template has an already configured Jest / Vitest test unit (
|
|
27
|
+
The Matterbridge Plugin Template has an already configured Jest / Vitest test unit (with 100% coverage) that you can expand while you add your own plugin logic.
|
|
28
28
|
|
|
29
29
|
It also has a workflow configured to run on push and pull request that build, lint and test the plugin on node 20, 22 and 24 with ubuntu, macOS and windows.
|
|
30
30
|
|
|
@@ -80,13 +80,13 @@ Matterbridge exports from:
|
|
|
80
80
|
|
|
81
81
|
- All matter.js types.
|
|
82
82
|
|
|
83
|
-
### WARNING \***\*\*\*\*\***
|
|
83
|
+
### \***\*\*\*\*\*** WARNING \***\*\*\*\*\***
|
|
84
84
|
|
|
85
85
|
A plugin must never install or import from `@matter` or `@project-chip` directly (neither as a dependency, devDependency, nor peerDependency), as this leads to a second instance of `matter.js`, causing instability and unpredictable errors such as "The only instance is Endpoint".
|
|
86
86
|
|
|
87
87
|
Additionally, when Matterbridge updates the `matter.js` version, it should be consistent across all plugins.
|
|
88
88
|
|
|
89
|
-
### WARNING \***\*\*\*\*\***
|
|
89
|
+
### \***\*\*\*\*\*** WARNING \***\*\*\*\*\***
|
|
90
90
|
|
|
91
91
|
A plugin must never install Matterbridge (neither as a dependency, devDependency, nor peerDependency).
|
|
92
92
|
|
|
@@ -100,9 +100,25 @@ Matterbridge must be linked to the plugin in development only. At runtime the pl
|
|
|
100
100
|
}
|
|
101
101
|
```
|
|
102
102
|
|
|
103
|
-
If you don't use Dev Container from the Matterbridge Plugin Template, on the
|
|
103
|
+
If you don't use Dev Container from the Matterbridge Plugin Template, on the host you use for the development of your plugin, you need to clone matterbridge, built it locally and link it globally (npm link from the matterbridge package root).
|
|
104
|
+
|
|
105
|
+
```bash
|
|
106
|
+
git clone https://github.com/Luligu/matterbridge.git
|
|
107
|
+
cd matterbridge
|
|
108
|
+
npm install
|
|
109
|
+
npm run build
|
|
110
|
+
npm link
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
If you want to develop a plugin using the dev branch of matterbridge (I suggest you do it).
|
|
104
114
|
|
|
105
|
-
|
|
115
|
+
```bash
|
|
116
|
+
git clone -b dev https://github.com/Luligu/matterbridge.git
|
|
117
|
+
cd matterbridge
|
|
118
|
+
npm install
|
|
119
|
+
npm run build
|
|
120
|
+
npm link
|
|
121
|
+
```
|
|
106
122
|
|
|
107
123
|
Always keep your local instance of matterbridge up to date.
|
|
108
124
|
|
|
@@ -116,19 +132,19 @@ To install i.e. https://github.com/Luligu/matterbridge-example-accessory-platfor
|
|
|
116
132
|
|
|
117
133
|
On windows:
|
|
118
134
|
|
|
119
|
-
```
|
|
135
|
+
```powershell
|
|
120
136
|
cd $HOME\Matterbridge
|
|
121
137
|
```
|
|
122
138
|
|
|
123
139
|
On linux or macOS:
|
|
124
140
|
|
|
125
|
-
```
|
|
141
|
+
```bash
|
|
126
142
|
cd ~/Matterbridge
|
|
127
143
|
```
|
|
128
144
|
|
|
129
145
|
then clone the plugin
|
|
130
146
|
|
|
131
|
-
```
|
|
147
|
+
```bash
|
|
132
148
|
git clone https://github.com/Luligu/matterbridge-example-accessory-platform
|
|
133
149
|
cd matterbridge-example-accessory-platform
|
|
134
150
|
npm install
|
|
@@ -138,7 +154,7 @@ npm run build
|
|
|
138
154
|
|
|
139
155
|
then add the plugin to Matterbridge
|
|
140
156
|
|
|
141
|
-
```
|
|
157
|
+
```bash
|
|
142
158
|
matterbridge -add .
|
|
143
159
|
```
|
|
144
160
|
|
package/README.md
CHANGED
|
@@ -15,25 +15,25 @@
|
|
|
15
15
|
|
|
16
16
|
Matterbridge is a Matter plugin manager.
|
|
17
17
|
|
|
18
|
-
It allows you to have all your Matter devices up and running in a couple of minutes without
|
|
19
|
-
having to deal with the pairing process of each single device.
|
|
18
|
+
It allows you to have all your Matter devices up and running in a couple of minutes without having to deal with the pairing process for each individual device.
|
|
20
19
|
|
|
21
|
-
|
|
20
|
+
Developers can focus solely on device development by extending the provided classes.
|
|
22
21
|
|
|
23
|
-
|
|
22
|
+
Simply pair Matterbridge once, and it will load all your registered plugins.
|
|
24
23
|
|
|
25
|
-
This project aims to
|
|
24
|
+
This project aims to enable porting Homebridge plugins to Matterbridge plugins without having to recode everything ([Development](README-DEV.md)).
|
|
26
25
|
|
|
27
|
-
|
|
28
|
-
|
|
26
|
+
The easiest way to start create a new plugin is to clone the [Matterbridge Plugin Template](https://github.com/Luligu/matterbridge-plugin-template) which has **Dev Container support for instant development environment** and all tools and extensions (like Node.js, npm, TypeScript, ESLint, Prettier, Jest and Vitest) already loaded and configured.
|
|
27
|
+
|
|
28
|
+
Matterbridge creates a device that can be paired with any ecosystem, such as Apple Home, Google Home, Amazon Alexa, Home Assistant, or any other platform supporting Matter.
|
|
29
29
|
|
|
30
30
|
You don't need a hub or a dedicated new machine.
|
|
31
31
|
|
|
32
|
-
No complex setup just copy paste the installation scripts.
|
|
32
|
+
No complex setup: just copy paste the installation scripts.
|
|
33
33
|
|
|
34
|
-
Matterbridge is
|
|
34
|
+
Matterbridge is lightweight and also runs on slow Linux machines with as little as 512MB of memory.
|
|
35
35
|
|
|
36
|
-
It runs perfectly on macOS and Windows
|
|
36
|
+
It also runs perfectly on macOS and Windows.
|
|
37
37
|
|
|
38
38
|
If you like this project and find it useful, please consider giving it a star on GitHub at https://github.com/Luligu/matterbridge and sponsoring it.
|
|
39
39
|
|
|
@@ -45,7 +45,7 @@ If you like this project and find it useful, please consider giving it a star on
|
|
|
45
45
|
|
|
46
46
|
The project is build on top of https://github.com/project-chip/matter.js.
|
|
47
47
|
|
|
48
|
-
A special
|
|
48
|
+
A special thanks to Apollon77 for his incredible work.
|
|
49
49
|
|
|
50
50
|
## Discord
|
|
51
51
|
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "matterbridge",
|
|
3
|
-
"version": "3.0.8-dev-
|
|
3
|
+
"version": "3.0.8-dev-20250624-5abb0bb",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "matterbridge",
|
|
9
|
-
"version": "3.0.8-dev-
|
|
9
|
+
"version": "3.0.8-dev-20250624-5abb0bb",
|
|
10
10
|
"license": "Apache-2.0",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@matter/main": "0.14.0",
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"express": "5.1.0",
|
|
15
15
|
"glob": "11.0.3",
|
|
16
16
|
"multer": "2.0.1",
|
|
17
|
-
"node-ansi-logger": "3.
|
|
17
|
+
"node-ansi-logger": "3.1.1",
|
|
18
18
|
"node-persist-manager": "2.0.0",
|
|
19
19
|
"ws": "8.18.2"
|
|
20
20
|
},
|
|
@@ -1349,12 +1349,13 @@
|
|
|
1349
1349
|
}
|
|
1350
1350
|
},
|
|
1351
1351
|
"node_modules/node-ansi-logger": {
|
|
1352
|
-
"version": "3.
|
|
1353
|
-
"resolved": "https://registry.npmjs.org/node-ansi-logger/-/node-ansi-logger-3.
|
|
1354
|
-
"integrity": "sha512-
|
|
1355
|
-
"
|
|
1352
|
+
"version": "3.1.1",
|
|
1353
|
+
"resolved": "https://registry.npmjs.org/node-ansi-logger/-/node-ansi-logger-3.1.1.tgz",
|
|
1354
|
+
"integrity": "sha512-tFeCSxwiRg5XaNda5nC27alzraZP76nLtUk1JDZqb9byhW4WYaSGL7/lmxFHEI16gypQDMEYljuF+wcG+cPPHw==",
|
|
1355
|
+
"hasShrinkwrap": true,
|
|
1356
|
+
"license": "Apache-2.0",
|
|
1356
1357
|
"engines": {
|
|
1357
|
-
"node": ">=18.0.0"
|
|
1358
|
+
"node": ">=18.0.0 <19.0.0 || >=20.0.0 <21.0.0 || >=22.0.0 <23.0.0 || >=24.0.0 <25.0.0"
|
|
1358
1359
|
},
|
|
1359
1360
|
"funding": {
|
|
1360
1361
|
"type": "buymeacoffee",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "matterbridge",
|
|
3
|
-
"version": "3.0.8-dev-
|
|
3
|
+
"version": "3.0.8-dev-20250624-5abb0bb",
|
|
4
4
|
"description": "Matterbridge plugin manager for Matter",
|
|
5
5
|
"author": "https://github.com/Luligu",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -103,7 +103,7 @@
|
|
|
103
103
|
"express": "5.1.0",
|
|
104
104
|
"glob": "11.0.3",
|
|
105
105
|
"multer": "2.0.1",
|
|
106
|
-
"node-ansi-logger": "3.
|
|
106
|
+
"node-ansi-logger": "3.1.1",
|
|
107
107
|
"node-persist-manager": "2.0.0",
|
|
108
108
|
"ws": "8.18.2"
|
|
109
109
|
}
|