getting started feature roadmap faq
features use cases pricing
developers
company
contact

handles the hard part of building trading apps chat & messaging IoT dashboards geolocation collaborative SaaS

a lightning fast realtime data-store that connects browsers, smartphones, backends and the IoT - complete with realtime search, publish-subscribe and request-response

TRY IT FOR FREE
efficient desktop elegant tablet futuristic robot arm smart tablet colaborative desktop

peace of mind as a service

deepstreamHub enables developers to create next generation realtime apps without having to worry about complexity, scalability or maintenance

open and transparent

always maintain full ownership of your data and benefit from our open core and active community

connects everything

from social messaging, collaborative document editing and realtime geolocation to split second financial trading and IoT data distribution

all you need

deepstreamHub seamlessly combines the realtime concepts you will need to build and expand your idea

  • Realtime Database icon

    realtime datastore

    store and sync data in realtime between all connected clients

  • Publish Subscribe icon

    publish subscribe

    broadcast messages to millions of subscribers

  • Request Response icon

    request response

    use load-balanced remote procedure calls at scale

  • Realtime Search icon

    realtime search

    stay up to date with live query results

  • Strong Security icon

    strong security

    fully encrypted, granular permissions and authentication rules

  • Intergrated Channels icon

    instant analytics

    track and analyse your user's behaviour as it happens

Realtime Search icon

a simple yet powerful api for
data-sync
data-sync request-response publish-subscribe

javascript
javascript java/android ios/swift
// get the record var driver = client.record.getRecord( 'driver/14' ); // subscribe to any changes within position driver.subscribe( 'position', function( position ){ updateMarker( position.x, position.y ); }); // subscribe to the event client.event.subscribe( 'chat-msg', function( msgText ){ console.log( msgText ); }); // remote procedure call for "times-three" with 7 client.rpc.make( "times-three", 7, function( err, result ){ // And get 21 back console.log( result ); }); // get the record Record r = client.record.getRecord( "driver/14" ); // subscribe to any changes within position r.subscribe( "position", new RecordPathChangedCallback() { public void onRecordPathChanged(String recordName, String path, JsonElement position) { updateMapMarker( position ); } }); // subscribe to any event client.event.subscribe("chat-msg", new EventListener() { // receive any serializable data public void onEvent(String eventName, Object msgText) { System.out.println( msgText ); } }); // Make a remote procedure call RpcResult rpcResponse = client.rpc.make( "times-three", 7 ); // And get 21 back System.out.println( rpcResponse.getData() ); // get the record let r = client.record.getRecord("driver/14") // subscribe to any changes within position let listener = RecordSubscriptionCallback(handler: { (recordName, path, position) -> Void in dispatch_async(dispatch_get_main_queue(), { () -> Void in updateMapMarker(position) }) }) r.subscribe("position", recordPathChangedListener: listener) // subscribe to any event let listener = EventListener(handler: { (eventName, msgText) -> Void in dispatch_async(dispatch_get_main_queue(), { () -> Void in if(msgText.getAsJsonPrimitive().isString()) { print(msgText) } }) }) client.event.subscribe("chat-msg", eventListener: listener) // Make a remote procedure call let rpcResponse = client.rpc.make("times-three", 7) // And get 21 back print(rpcResponse.getAsInt())
javascript
javascript java/android ios/swift
// get the record var driver = client.record.getRecord( 'driver/14' ); // and every time the driver moves navigator.geolocation.watchPosition(function( pos ){ // send its position driver.set( 'position.x', pos.coords.latitude ); driver.set( 'position.y', pos.coords.longitude ); }); // emit events with any kind of serializable data client.event.emit( 'chat-msg', 'how\'s life?' ); // register as a provider client.rpc.provide( 'times-three', function( num, response ){ // ...and respond to requests response.send( num * 3 ); }); // implements android.location.LocationListener public void onLocationChanged(Location location) { // get the record Record record = client.record.getRecord( "driver/14" ); // any kind of data path works record.set( "position.x", location.getLongitude() ); //as well as any kind of serializable datatype record.set( "position.y", location.getLatitude() ); } // emit events with any kind of serializable data client.event.emit( "chat-msg", "how's life?" ); // register as a provider client.rpc.provide("times-three", new RpcRequestedListener() { // this method will be invoked once another client calls rpc.make public void onRPCRequested(String rpcName, Object data, RpcResponse response) { // data can be any kind of serializable object response.send( (Double) data * 3 ); } }); func onLocationChanged(location: Location) { // get the record let record = client.record.getRecord("driver/14") // any kind of data path works record.set("position.x", value: location.longitude) //as well as any kind of serializable datatype record.set("position.y", value: location.latitude) } // emit events with any kind of serializable data client.event.emit("chat-msg", value: "how's life?") let listener = RpcRequestedListener(handler: { (rpcName, data, response) -> Void in // this method will be invoked once another client calls rpc.make dispatch_async(dispatch_get_main_queue(), { () -> Void in // data can be any kind of serializable object response.send(data * 3) }) }) client.rpc.provide("times-three", rpcRequestedListener: listener)
foto
  • users icon 32k

    user logins

  • messages icon 1400

    events per second

  • subscriptions icon 10.5

    mil records created

built for...

  • iOS logo
  • Android logo
  • Java logo
  • IoT logo
elton

Rooted in Open Source

We've created deepstream.io →, a scalable and lightning fast open source realtime server. With numerous large scale enterprise users, an active community and a rich ecosystem of connectors and integrations it’s always there for you if you prefer to do things on your own.

stock-trading-platform

one easy API for the toughest usecases

try it for free