Go to file
2016-03-09 15:37:54 -08:00
src Moved eventStoreConnection in it's onw file 2016-03-09 15:37:54 -08:00
test Moved eventStoreConnection in it's onw file 2016-03-09 15:37:54 -08:00
.gitignore Initial commit 2016-03-09 11:52:01 -08:00
index.js Moved eventStoreConnection in it's onw file 2016-03-09 15:37:54 -08:00
LICENSE Initial commit 2016-03-09 11:52:01 -08:00
package.json Initial commit 2016-03-09 12:46:15 -08:00
README.md Updated readme.md 2016-03-09 15:37:08 -08:00

eventstore-node

A port of the EventStore .Net ClientAPI to Node.js

Porting .Net Task to Node.js

I used Promise to replace .Net Task, so when executing an async command, i.e. appendToStream you'll have to wait for result/error like this:

connection
  .appendToStream('myStream', client.expectedVersion.any, events, userCredentials)
  .then(function(result) {
    //Do something with the WriteResult here
  })
  .catch(function(err) {
    //Handle error here
  });

Status

Unstable

Incomplete/missing features:

  • Typed errors: currently most errors are direct instance of Error, which is not practical for error handling
  • Ssl connection: Ssl connetion is not implemented yet
  • Persistent subscription: create/update/delete/connec to a persistent subscription are not implemented yet
  • Set system settings: not implemented yet
  • Performance: there's still some while loop in the code that could be problematic with node.js
  • Tests: tests are only covering happy path scenarios for now
  • NPM package: no package released yet, I will release one when code is stable

Running the tests

You will need:

To execute the tests suites simply run test with npm

npm test

License

This is a port, original code is released under the EventStore license and can be found at https://github.com/eventstore/eventstore. Ported code is released under the MIT license, see https://github.com/nicdex/eventstore-node/blob/master/LICENSE