RethinkDB, an open-source database, wants to help developers prototype and build cross-platform, real-time Web, mobile and IoT apps. The company announced Horizon, a new open-source JavaScript platform, is coming out of a closed developer preview today.
According Michael Glukhovsky, cofounder of RethinkDB, developers need help trying to figure out how they build apps when their data is constantly changing, and how to respond to the ever-changing business and software requirements. Horizon is designed to reduce the amount of work necessary to build apps while giving developers the freedom to work in the tools and libraries of their choice.
(Related: Node.js version 6 released)
“The primary goal of Horizon is application development and making it easier to build JavaScript apps,” he said. “All of Horizon’s features are designed to smooth out friction. Horizon gives you a complete self-hosted open-source real-time back end for building JavaScript apps.”
The solution is built on top of RethinkDB, giving developers the ability to add custom features and complexity to their apps.
Similarly to solutions like Firebase and Facebook’s old Parse solution, Horizon aims to abstract a lot of the development work and solve common problems, but Horizon doesn’t limit a developer’s control over their own data or app. “Solutions like Firebase let you solve common patterns that come up when building an app, and takes care of a lot of concerns, but they are still a Backend-as-a-Service and not something you can run on your laptop or any machine you want,” said Glukhovsky. “Our tools shouldn’t limit our imagination. Our goal is not to just help people build apps in one particular way, but to take the best-of-breed open-source technologies and unify them as a distribution of JavaScript modules to make it really easy for people to get up and running.”
Horizon features:
- Subscribe API to push data in real time without having to write back-end code
- Auth API that allows users to connect their apps to Facebook, GitHub, Google and other authentication provides
- Identity API to handle user accounts
- Security, such as industrial-grade permissions and encryptions
- Extensible back end that allows users to integrate the solution with custom back-end code in Node.js
Going forward, the company plans to add more features such as geolocation, a GraphQL adapter, unit testing automation, and performance monitoring. Since RethinkDB develops everything out in the open, the users will determine which features will take top priority, according to Glukhovsky. The company is also working on Horizon Cloud, a cloud infrastructure for managing and hosting Horizon apps, which is expected to launch by the end of the year.
“There is a fundamental shift on how people are engaging with apps and how app developers want to build apps. These kinds of tools are going to democratize access to these kinds of technologies,” said Glukhovsky.