• Stars
    star
    7,133
  • Rank 5,457 (Top 0.2 %)
  • Language
    TypeScript
  • License
    MIT License
  • Created about 10 years ago
  • Updated 8 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

deepstream.io server

deepstream - the open realtime server deepstream

deepstream is an open source server inspired by concepts behind financial trading technology. It allows clients and backend services to sync data, send messages and make rpcs at very high speed and scale.

npm versionDocker Stars

deepstream has three core concepts for enabling realtime application development

records are schema-less, persistent documents that can be manipulated and observed. Any change is synchronized with all connected clients and backend processes in milliseconds. Records can reference each other and be arranged in lists to allow modelling of relational data

events allow for high performance, many-to-many messaging. deepstream provides topic based routing from sender to subscriber, data serialisation and subscription listening.

remote procedure calls allow for secure and highly available request response communication. deepstream handles load-balancing, failover, data-transport and message routing.

deepstream offers a combination of different authentication mechanisms with a powerful permission-language called Valve that allows you to specify which user can perform which action with which data.

Getting Started:

  1. Tutorials - What is deepstream
  2. Installing deepstream
  3. Quickstart
  4. Documentation

Community Links

  1. Stack Overflow
  2. Github Discussions

Contributing

deepstream development is a great way to get into building performant Node.js applications, and contributions are always welcome with lots of . Contributing to deepstream is as simple as having Node.js (10+) and TypeScript (3+) installed, cloning the repo and making some changes.

~ » git clone [email protected]:deepstreamIO/deepstream.io.git
~ » cd deepstream.io
~/deepstream.io » git submodule update --init
~/deepstream.io » npm i
~/deepstream.io » npm start
      _                     _
   __| | ___  ___ _ __  ___| |_ _ __ ___  __ _ _ __ ____
  / _` |/ _ \/ _ \ '_ \/ __| __| '__/ _ \/ _` | '_ ` _  \
 | (_| |  __/  __/ |_) \__ \ |_| | |  __/ (_| | | | | | |
  \__,_|\___|\___| .__/|___/\__|_|  \___|\__,_|_| |_| |_|
                 |_|
 =====================   starting   =====================

From here you can make your changes, and check the unit tests pass:

~/deepstream.io » npm t

If your changes are substantial you can also run our extensive end-to-end testing framework:

~/deepstream.io » npm run e2e

For power users who want to make sure the binary works, you can run sh scripts/package.sh true. You'll need to download the usual node-gyp build environment for this to work and we only support the latest LTS version to compile. This step is usually not needed though unless your modifying resource files or changing dependencies.

More Repositories

1

deepstream.io-client-js

The Browser / Node.js Client for deepstream.io
TypeScript
294
star
2

dsh-demo-webrtc-examples

JavaScript
79
star
3

ds-demo-spaceshooter

A simple multiplayer spaceshooter
JavaScript
61
star
4

ds-realtime-retrospective-board

files for realtime retrospective board tutorial
CSS
43
star
5

deepstream.io-client-java

The Java/Android Client for deepstream.io
Java
35
star
6

deepstream.io-provider-search-rethinkdb

A data-provider that makes every table searchable via rethinkdb
JavaScript
26
star
7

deepstream.io-storage-rethinkdb

A deepstream.io storage connector for RethinkDB
TypeScript
25
star
8

deepstream.io-storage-mongodb

A deepstream.io storage connector for MongoDb
TypeScript
23
star
9

deepstream.io-storage-postgres

Postgres Database connector for deepstream.io
TypeScript
21
star
10

deepstream-rethinkdb-stocks-example

Examples for Workshop: Live stock prices with RethinkDb and Deepstream.io
JavaScript
20
star
11

deepstream.io-cache-redis

A cache connector for Redis
TypeScript
20
star
12

deepstream.io-client-cpp

deepstream.io C++ client library
C++
19
star
13

deepstream.io-client-ios

The iOS client for deepstream.io
Swift
17
star
14

ds-tutorial-tanks

A realtime game using deepstream.io and pixi.js with basic AI elements
JavaScript
15
star
15

deepstream.io-msg-redis

Redis Message Connector
JavaScript
14
star
16

ds-demo-retrospective-board

A desktop retrospective board, different clients maybe coming soon ;)
JavaScript
11
star
17

ds-tutorial-passport-auth

A basic example on how to integrate facebook auth using the amazing passport.js library and use-express-middleware
JavaScript
11
star
18

deepstream.io-website

TypeScript
10
star
19

deepstream.io-msg-kafka

Apache Kafka Message Connector for deepstream.io
JavaScript
9
star
20

deepstream.io-client-php

PHP Client using the deepstream HTTP API
PHP
9
star
21

deepstream.io-performance

A performance platform for deepstream.io
JavaScript
8
star
22

deepstream.io-benchmarks

C++
8
star
23

deepstream.io-cache-memcached

A cache connector for Memcached
TypeScript
7
star
24

deepstream.io-msg-amqp

The AMQP connector for deepstream.io
JavaScript
7
star
25

deepstream.io-storage-elasticsearch

A deepstream.io storage connector for elasticsearch
JavaScript
7
star
26

ds-tutorial-express

An example on how to use express together with deepstream.io
HTML
7
star
27

deepstream.io-service

Allowing deepstream to run as a service on systems
JavaScript
6
star
28

deepstream.io-client-specs

A suite of Gherkin files to test protocol support by clients
Gherkin
6
star
29

ds-demo-provider

JavaScript
5
star
30

ds-tutorial-aws-sns

For the deepstream / Amazon Web Services Simple Notification Service Tutorial
JavaScript
5
star
31

urp-js

Javascript implementation of the binary protocol for URP
TypeScript
5
star
32

deepstream.io-realtime-search

Provides realtime lists for a collection of databases
TypeScript
5
star
33

deepstream.io-clusternode-redis

A redis cluster bus implementation to allow deepstream nodes to scale
TypeScript
5
star
34

dsh-demo-realtime-flight-tracker

HTML
4
star
35

dsh-demo-p2p-filesharing

P2P file sharing via WebRTC data channels
JavaScript
4
star
36

deepstream.io-example-plugins

A variety of all custom plugin examples
TypeScript
4
star
37

realtime-swarm

A swarm simulation with a handful of remote controllable agents
JavaScript
2
star
38

deepstream.io-client-go

2
star
39

deepstream.io-types

The deepstream enums and interfaces
TypeScript
2
star
40

deepstream.io-protobuf-js

The JS builder / parser for deepstream.io / node and JS runtimes
JavaScript
2
star
41

deepstream.io-dummy-client

A very basic JS file to show the quickest way to get a client running
TypeScript
2
star
42

deepstream.io-e2e

E2E tests in gherkin for multiple languages to use to ensure compatability with deepstream
Gherkin
2
star
43

deepstream.io-protobuf

The protobuf protocol files
2
star
44

deepstream.io-logger-winston

JavaScript
2
star
45

deepstream.io-protocol-text

The text based protocol used prior to binary
TypeScript
1
star
46

deepstream.io-protobuf-go

1
star
47

deepstream.io-permission-example

JavaScript
1
star
48

deepstream.io-cache-hazelcast

Hazelcast Cache Connector
JavaScript
1
star
49

deepstream.io-client-kotlin

A kotlin client for android and JVM (and possibly native going forward)
Kotlin
1
star
50

deepstream.io-connection-emoticon

An example endpoint using a protocol based on emoticons
JavaScript
1
star