Security News
New Python Packaging Proposal Aims to Solve Phantom Dependency Problem with SBOMs
PEP 770 proposes adding SBOM support to Python packages to improve transparency and catch hidden non-Python dependencies that security tools often miss.
@project-chip/matter.js
Advanced tools
Implementation of Matter protocol in typescript with no native dependencies (and very limited dependencies).
This is the JavaScript only Core of the Matter protocol. It is used by other projects to implement Matter Nodes and Clients and add the relevant specific implementations for Network and other elements.
The following features are abstracted away to allow to be implemented environment specific:
This library exports the Matter protocol functionality as well as some helper functions as named exports:
Export | Description |
---|---|
@project-chip/matter.js | Exports the API to implement a Device or a Controller. |
@project-chip/matter.js/certificate | Exports Certificate (Root-/PAA/PAI/IAC/DA-Certificates) related functionality |
@project-chip/matter.js/cluster | Exports Matter Cluster definitions and Default Cluster-Handlers |
@project-chip/matter.js/codec | Exports Codecs for e.g. Matter-Messages |
@project-chip/matter.js/common | Exports certain common functionalities |
@project-chip/matter.js/crypto | Exports Crypto related abstract functionality that needs to be implemented platform specific! |
@project-chip/matter.js/datatype | Exports Matter Data types |
@project-chip/matter.js/fabric | Exports Matter-Fabric functionality |
@project-chip/matter.js/interaction | Exports Matter Interaction protocol functionality |
@project-chip/matter.js/log | Exports Logging functionality (based on "console") |
@project-chip/matter.js/math | Exports Math functionality used by Matter |
@project-chip/matter.js/mdns | Exports Basic MDNS functionality (uses Network implementation) |
@project-chip/matter.js/model | Exports a JavaScript version of the Matter data model |
@project-chip/matter.js/net | Exports Basic Network abstract functionality that needs to be implemented platform specific! |
@project-chip/matter.js/protocol | Exports Basic Matter protocol functionality |
@project-chip/matter.js/schema | Exports Schema definitions and functionality |
@project-chip/matter.js/securechannel | Exports Secure Channel functionality |
@project-chip/matter.js/session | Exports Session and Secure-Session functionality |
@project-chip/matter.js/spec | Exports Matter Specification References |
@project-chip/matter.js/storage | Exports Basic Storage abstract functionality that needs to be implemented platform specific! |
@project-chip/matter.js/time | Exports Basic Time/Timer abstract functionality that needs to be implemented platform specific! |
@project-chip/matter.js/tlv | Exports Matter TLV type definitions |
@project-chip/matter.js/util | Exports Basic Utility functionality |
Both exports and the typings are exported as CommonJS and ES6 modules.
For more details please refer to the API Documentation.
To have Typescript and your IDE know all the relevant exported functionality you need to use the following in your tsconfig.json:
{
"compilerOptions": {
"moduleResolution": "node16", // Required to support package.json exports
"module": "node16" // Required to make sure all imports are js
}
}
matter.js is used at the core of those two projects:
npm run build
: Build all code and create CommonJS and ES6 variants in dist directory. This will built incrementally and only build the changed files.npm run build-clean
: Clean the dist directory and build all code from scratchnpm run test-node
: Run tests in node.jsnpm run test-web
: Run tests in the browsernpm run test
: Run all teststest-web will create a /coverage directory containing the test code coverage
0.7.0 (2023-11-13)
FAQs
Matter protocol in pure js
The npm package @project-chip/matter.js receives a total of 1,818 weekly downloads. As such, @project-chip/matter.js popularity was classified as popular.
We found that @project-chip/matter.js demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
PEP 770 proposes adding SBOM support to Python packages to improve transparency and catch hidden non-Python dependencies that security tools often miss.
Security News
Socket CEO Feross Aboukhadijeh discusses open source security challenges, including zero-day attacks and supply chain risks, on the Cyber Security Council podcast.
Security News
Research
Socket researchers uncover how threat actors weaponize Out-of-Band Application Security Testing (OAST) techniques across the npm, PyPI, and RubyGems ecosystems to exfiltrate sensitive data.