Kuzzle is a document back-end that can run on-premises or in the cloud. The company behind this platform has recently announced the enterprise version of their solution during CES 2017.
Kuzzle persists schema-based or schema-less documents in a NoSQL store, providing a CRUD API and advanced searches via Elasticsearch. Data is synchronized across multiple devices and protocols. It includes real-time notifications on document changes and can be extended through plug-ins. These allow developers to add functionality before or after an operation is executed, to extend the APIs, and others. The supported communication protocols are HTTP , WebSocket, Socket.io and MQTT. Support for other protocols, an example being those used to communicate with IoT devices, can be added through plug-ins.
Kuzzle comes with a set of SDKs for JavaScript, PHP, iOS, and Android. A C SDK is planned.
The open source version can be used to prototype and test applications, but it is limited to run on a single server. For real applications one needs the Enterprise Edition which comes with licenses and support. This edition includes enterprise features, such as support for clustering, fail-over, scaling on demand, diagnostic tools, etc. It can run on-premises or in the cloud. The company also offers a hosted version on AWS and GCE.