The m2ag-thing-framework (formerly m2ag-iot-framework) has reached alpha 3. The functionality of this release represents MVP for the project. The framework generates (RFC?) compliant webthings and is compatible with the Mozilla IoT gateway.
Designed with security and privacy in mind the m2ag-thing-framework comes out of the box pre-configured for ssl for every thing and http basic auth for the api and management app. Coming in beta one will be a jwt implementation for the webthing security to provide peace of mind that devices can not be easily hijacked.
The device side implementation can happily run inside your firewall and never connect to the internet after the initial install. All data is kept locally. Data logging and rules engine support can be provided by the Mozilla IoT gateway. All files needed to run the thing are local after configuration.
The html5 management app is used to configure and monitor the device. Custom devices pages are automatically generated for installed things allowing debug and monitoring. The pages can be individually addressed to they can be used as ui’s for simple cases. The management app needs to be connected to the cloud while modules are being added to a thing, but afterwards does not.
The project consists of four separate projects :
- m2ag-thing-client — html5 served by the device
- m2ag-thing — the actual webthing
- m2ag-things — component repository
- m2ag-thing-installer — install the framework and support tools
The framework consist of custom python, html as well as nginx, flask and other services.
Work has already started on beta 1. This will bring a jwt implementation for securely accessing things.