Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/paambaati/node-liftbridge
🌉 Node.js client for Liftbridge
https://github.com/paambaati/node-liftbridge
grpc grpc-node liftbridge messaging nats nodejs stream
Last synced: 20 days ago
JSON representation
🌉 Node.js client for Liftbridge
- Host: GitHub
- URL: https://github.com/paambaati/node-liftbridge
- Owner: paambaati
- License: mit
- Created: 2019-09-03T13:24:53.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-01-05T08:27:08.000Z (almost 2 years ago)
- Last Synced: 2024-11-27T14:22:44.349Z (26 days ago)
- Topics: grpc, grpc-node, liftbridge, messaging, nats, nodejs, stream
- Language: JavaScript
- Homepage: https://paambaati.github.io/node-liftbridge/globals.html
- Size: 1.19 MB
- Stars: 14
- Watchers: 5
- Forks: 4
- Open Issues: 18
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# node-liftbridge
![](liftbridge.svg)
Node.js client for [Liftbridge](https://github.com/liftbridge-io/liftbridge).
> Liftbridge provides lightweight, fault-tolerant message streams by implementing a durable stream augmentation for the [NATS messaging system](https://nats.io/). It extends NATS with a Kafka-like publish-subscribe log API that is highly available and horizontally scalable. Use Liftbridge as a simpler and lighter alternative to systems like Kafka and Pulsar or use it to add streaming semantics to an existing NATS deployment.
🚧 **This module is still under active development!** [Would you like to contribute?](https://github.com/paambaati/node-liftbridge) 🚧
## Installation
```bash
yarn add liftbridge
# or
npm install liftbridge
```## Usage
```typescript
import LiftbridgeClient from 'liftbridge';const client = new LiftbridgeClient('localhost:9292');
await client.connect();await client.createStream(new LiftbridgeStream({
subject: 'my-subject',
name: 'stream-name',
partitions: 5,
maxReplication: true
});
```📚 See [Documentation](https://paambaati.github.io/node-liftbridge/globals.html) for more detailed examples.
## Developer Notes
1. To regenerate the gRPC bindings, update the path to the [latest proto file](https://github.com/liftbridge-io/liftbridge-grpc/blob/master/api.proto) and then run `./scripts/generate_grpc_code.sh`
## Roadmap
- [ ] Tests & coverage
- [ ] CI
- [ ] Contribution guide
- [ ] gRPC Connection pool
- [ ] Logging