Building real-time apps isn’t as real-time as it should be, according to Siddharth Kothari, founder and CEO of Appbase.io. That’s why the St. Louis, Mo.-based company is turning its focus to front-end developer tools.
Appbase.io is a hosted Elasticsearch service with built-in publish/subscribe support for streaming document updates and query results.
“We want to help developers who want to build real-time features. It could be as simple as chat to what Uber is trying to do with real-time data in a geographic area,” Kothari said.
It’s used by e-commerce companies for search and recommendations; IoT companies using sensor data to build dashboards and in varied use cases — one customer wants a dashboard of its entire CRM pipeline — who’s making the most sales, who’s the next customer sales reps should call.
It’s being used by aerial drone company Aerial Insights, showing data collected by drones on a map interface in real time, he said, and by Shopelect, a business supplies site, for search interface, and by Lyearn, a Coursera-like e-learning site, for search and recommendations.
Elasticsearch + Streaming
Appbase provides every query option that Elasticsearch offers in streaming mode. Elasticsearch has around 150 different combinations of queries you can create. You can implement a combination of filters — fuzzy, geolocation, terms, range, multiple items — and stream JSON results directly as data is updated.
As a developer, you can subscribe to these queries, and every time something changes in your database, your endpoint gets the live data as the server gets the data, Kothari explained.
The company recently announced support for Elasticsearch v5.6.4 in addition to the Elasticsearch 2.x releases for its backend service.
Appbase enables developers to build real-time applications that incorporate database functionality without the need for multiple databases or an existing server setup. It can also be used with existing back-end infrastructure or on the client.
Appbase.io provides a fully managed streaming database — a feed of updates to historical data plus a real-time query endpoint — with a built-in sockets layer. It also offers multiple read/write tokens for security.
It provides a webhooks trigger that can directly make REST API calls to other services like Sendgrid, Urban Airship or Parse, which can then send notifications to users.
It’s designed as an OLTP system and can be used with tools such as Amazon Redshift, Google Big Query or Apache Hadoop for handling online transactions.
More Developer Tools
Appbase competes with any of the hosted Elasticsearch providers, including the parent company Elastic itself, but also with the likes of Firebase, Pusher and PubNub, though streaming sets it apart, Kothari said,
Yet he believes the future will be for those who help ease the developer pain points on the front end.
“We add streaming, but we realized there were a lot more things developers were missing in building real-time apps,” he said.
The company created the popular open source plug-ins for Elasticsearch, dejavu, a web user interface that allows you import JSON or CSV files directly. It’s built as a serverless app using React v0.14.0, and available as an extension or a Docker image.
It also offers the Mirage data browser for query creation and Gem GUI for Elasticsearch mappings.
Its tools used by 10,000 developers, Kothari said the company has “built a pretty active ecosystem around everything you need to build a real-time app.”
Appbase hopes to cut the time to build real-time apps, which used to take weeks or months, down to a weekend or even a few hours. One project still on its roadmap is consumer analytics in real time. It plans to pursue an open standardized approach to proving the missing tools, Kothari said.
It has turned its attention to libraries for building UIs.
“If you’re building an e-commerce store, you most likely need a search box, you need a place to show results, you need to display all these different filters. These are queries on the back end. Some are historical — you’re building a UI connected to your back-end data. … It could be searched. Use cases [include] if you’re trying to build something like Airbnb, where you want an aggregation of listings, or like Amazon, where you want the e-commerce aspect.”
Feature image via Pixabay