1.0.0 • Published 6 years ago

broadcreek v1.0.0

Weekly downloads
1
License
MIT
Repository
-
Last release
6 years ago

broadcreek

Like deepstream in that it provides:

  • realtime db with record subscriptions
  • provide and call RPCs
  • uws interface
  • shitty documentation (for now)

Unlike deepstream in that it:

  • logs what the fuck it's doing
  • has proper security
  • is designed for event sourcing
  • uses blockchain technology (ooooh, fancypants -- it's just chained hashes and payload signatures)
  • you can query shit

Still lots to do here... i.e.,

  • multiple providers of RPC calls accepted, but all calls will currently be routed to the eldest active provider
  • no analog of a list-type record
  • query support limited to record parameter matching
  • message validation could be more performant by caching certificate trust for the session
  • websocket already using C-bindings for performance, tests indicate 10-12x further performance improvement if message integrity and authentication checks were also done with native methods
  • subscribe to a query

Getting Started

Pre-requisites

  • Setup a local CA
  • Export CA cert in DER format, e.g., openssl x509 -inform PEM -outform DER -in ca.cert.pem -out ca.cer (it expects to find it in $CA/certs/ca.cer, see env var below)
git clone ssh://git@bitbucket.corp.comply.cloud:7999/tools/broadcreek.git
cd broadcreek
npm i
CA=/path/to/ca LOG=trace npm run dev