dd806d2a2e | ||
---|---|---|
app | ||
config | ||
.dockerignore | ||
.gitignore | ||
CONTRIBUTING.md | ||
Dockerfile | ||
LICENSE | ||
MAINTAINERS | ||
README.md | ||
docker-compose.yml | ||
gulpfile.js | ||
package.json | ||
server.js | ||
swagger.yaml |
README.md
Mainflux
About
Mainflux is lean open source industrial IoT cloud written in NodeJS.
It allows device, user and application connections over various network protocols, like HTTP, MQTT, WebSocket and CoAP, making a seamless bridge between them. As a consequence, Mainflux represents highly secure and highly optimised M2M platform based on the cutting-edge standards and approaches in the industry.
Architecture
Features
An extensive (and incomplete) list of featureas includes:
- Set of clean APIs, Swagger documented: HTTP RESTful, MQTT, WebSocket and CoAP
- Set of client libraries for many HW platforms in several programming languages: C/C++, JavaScript and Python
- Device management and provisioning and OTA FW updates
- UNIX-like permissions for device sharing
- Highly secured connections via TLS and DTLS
- User authentication via JSON Web Tokens
- Responsive and scalable ModgoDB database
- Modern architecture based on micro-services
- LwM2M standard compliance via Coreflux
- Partial oneM2M compliance
- Easy deployment and high system scalability via Docker images
- Clear project roadmap, extensive development ecosystem and highly skilled developer community
- Professional support via Mainflux company
- And many more
Install
Clone the repo:
git clone https://github.com/Mainflux/mainflux.git
cd mainflux
Install Node modules:
npm install
Run Gulp Task:
gulp
Docker
Apart from main nodejs
Docker image, Mainflux also uses mongo
Docker image (database instance is run in a separte generic Docker image).
This is why Mainflux uses Docker Compose, to run both nodejs
and mongo
images at the same time and make a connection between them:
docker-compose up