chenjianxin / simpleiot

Simple IoT cloud/edge application/framework

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Go Reference Go code stats Go Report Card Slack Widget

Simple Iot is a platform that enables you to add remote sensor data, telemetry, configuration, and device management to your project or product.

Implementing IoT systems is hard. Most projects take way longer and cost more than they should. The fundamental problem is getting data from remote locations (edge) to a place where users can access it (cloud). We also need to update data and configuration at the edge in real time from any location. Simple IoT is an attempt to solve these problems by embracing the fact that IoT systems are inherently distributed and building on simple concepts that scale.

Simple IoT provides:

  • a single application with no dependencies that can be run in both cloud and edge instances
  • efficient syncronization data in both directions
  • a powerful UI to view configuration and current values
  • a rules engine that runs on all instances that can trigger notifications or set data
  • extensive support for modbus -- both server and client
  • flexible graph orgnization of instances, users, groups, rules, and configuration
  • intgration with other services like InfluxDB and Twilio
  • a system that is easy to extend in any language using NATS
  • a number of useful Go packages to use in your custom application

See vision and architecture for addition discussion on these points.

This project was developed while building real-world applications and has primarily been driven by these project requirements.

See detailed documentation for installation, usage, and development information.

Support, Community, Contributing, etc.

Pull requests are welcome -- see development for more thoughts on architecture, tooling, etc. Issues are labelled with "help wanted" and "good first issue" if you would like to contribute to this project.

For support or to discuss this project, use one of the following options:

License

Apache Version 2.0

About

Simple IoT cloud/edge application/framework

License:Apache License 2.0


Languages

Language:Go 56.8%Language:Elm 27.2%Language:JavaScript 14.8%Language:Shell 1.0%Language:HTML 0.1%Language:CSS 0.0%