MAINFLUX

OPEN SOURCE IoT PLATFORM
PUBLISHED UNDER APACHE 2.0 LICENCE

Written in Go as a set of microservices, containerized
by Docker and orchestrated with Kubernetes

GET STARTED DOWNLOAD

WHAT IS MAINFLUX

Mainflux is full-stack, perfromant, scalable, secure, open source and patent-free IoT cloud platform written in the Go programming language. Built as a set of microservices containerized by Docker and orchestrated with Kubernetes, it accepts connections over multiple network protocols (i.e. HTTP, MQTT, WebSocket), thus making a seamless bridge between them, and meant to be used as IoT middleware which provides all necessary capabilities for the development of IoT solutions, applications and intelligent devices.

Mainflux is created with a experience gained developing WeIO, Linux prototyping HW & SW board, conceived to democratize rapid prototyping and creation of wirelessly connected interactive IoT objects through an intuitive Python-based SDK that could interface with the underlying hardware. This development was crucial because important lessons are learned how devices, sensors, and hardware affects the connectivity, protocol choices and IoT cloud architecture from the bottom up towards the cloud and application.

Selection of the Go language was essential for Manflux overall performance. Go brings the best of both worlds. On the one hand, it is efficient: it runs directly on the underlying hardware, has small footprint and fast compiler. On the other hand, has an elegant concurrency code easy to write and maintain.

As an advanced, architecture Mainflux IoT platform has been recognized by the Linux Foundation, and been invited to join their EdgeX Foundry Project, an open source framework for edge computing hosted within a full hardware- and OS-agnostic reference software platform. Its mission is to set standards for interoperability and address challenges currently hindering faster adoption and successful implementations of IoT technology.



FEATURES


PERFORMANT

Due to Go programming language, and microservices-based architecture it has high-performance, scalability, fault-tolerance, small footprint, deployment speed, fast and robust execution.




DEVELOPER FRIENDLY

SDK - Client libraries for many hardware platforms in different programming languages, including: C/C++, JavaScript, Python and Go and with open APIs provide the ability to easily connect any device or sensor without modification or adjustment.




BUILT FOR EXTENSIBILITY

Reconfiguration or modification of the core platform is not needed for the implementation of vertical solutions and applications new features and functionalities.




MULTI - PROTOCOL AND DEVICE AGNOSTIC

PUB/SUB multiprotocol messaging bridge - HTTP, MQTT, WebSocket, CoAP - based on NATS ultra-performant broker.




SEAMLESS INTEGRATION

Seamless 3rd-party integration with existing enterprise systems (e.g., ERP, BI, CRM), databases, and analytics programs, back-end systems and/or other cloud services is provided and ensured with open, modularized and flexible architecture consisting of many IoT protocols and easy-to-use APIs.




SECURE

Enhanced and fine-grained security via deployment-ready Mainflux Authentication and Authorization Server with Access Control scheme based on customizable API keys and scoped JWT. NGINX reverse proxy for security, load-balancing and termination of TLS and DTLS connections.




SCALE DOWN - DEPLOYABLE

Deployable from multi-datacenter scale to RPi class devices.




LOW OPEX

Low operating expense (OPEX) due to design and selection of core technologies.




Mainflux is member of
Linux Foundation Edgex Foundry Project