Platform

The ClearBlade IoT Platform is a development and runtime engine for the Enterprise Internet of Things.

Purpose

The ClearBlade IoT Platform operates as:

  • IoT Application Stack
  • Development Environment
  • Edge Orchestration Platform

IoT Application Stack

Operates as full stack, middleware or backend to an IoT Application with its six core modules:

Module Features
Code Engine JavaScript Code Engine designed for highly parallelized microservices
Collections A generic API for interacting with Data Stores, such as ClearBlade Cloud, MySQL, MongoDB, PostgreSQL
Portals A full customizable user dashboard for interacting with your IoT Application
Deployment Highly customizable configuration for pushing microservices, data, sync behavior, and portals to groups of Edges
Messaging Scaleable, lightweight MQTT Broker for interacting with IoT Devices
Adapters Powerful model for deploying software and hardware adapters to many new or existing Edges

Development Environment

Deploying an IoT solution once is simple, but a production solution will require many development iterations, new features, and security updates. The ClearBlade IoT Platform also operates as a development environment by allowing developers to modify microservices, collections, portals, and other assets from within the centralized platform, and the changes are synced across all Edges. This creates a simple, centralized development experience that can seamlessly sync across many edges running on different machines in many geospatially distant networks.

Edge Orchestration

The Edge Orchestration feature allows a single platform to

  • Administrate deployment to configure which microservices, collections, portals, and other assets are deployed to Edges and/or synced
  • Start, stop, pause, deploy, undeploy Adapters to groups of Edges
  • Monitor real-time system resource usage of Edges to evaluate appropriate hardware needs

Multi-Tenanted Model

Many developers can use a single ClearBlade IoT Platform at once. Each developer can have many IoT Applications running simultaneously, and systems can be shared between developers. Each IoT Application is called a System, which includes the six modules from above, and runs completely isolated from every other system on the platform.