@barfinex/provider-ws-bridge
v1.0.6
Published
WebSocket bridge library for the Barfinex ecosystem. Provides a shared provider communication layer to connect services and modules through a unified real-time WebSocket API.
Downloads
124
Maintainers
Readme
@barfinex/provider-ws-bridge
NestJS library that bridges Redis Pub/Sub to Socket.IO so real-time Provider events (orders, candles, accounts, etc.) can be streamed to browsers or other WebSocket clients.
Use it in any REST app that needs to push Barfinex event-bus data over WebSockets — for example a custom dashboard or a thin layer in front of the Provider.
What it does
- Redis → Socket.IO — subscribes to configurable Redis channels and forwards messages as Socket.IO events.
- NestJS module —
ProviderWsBridgeModule.forRoot(options)for Redis connection, channel list, and optional JSON parsing and logging. - Flexible channels — you choose which channels to bridge (e.g.
orders,candles,accounts).
Installation
In a monorepo, add the path to tsconfig.base.json:
{
"compilerOptions": {
"paths": {
"@barfinex/provider-ws-bridge": ["libs/provider-ws-bridge/src/index.ts"]
}
}
}Or install from npm when published:
npm install @barfinex/provider-ws-bridgeQuick use
import { Module } from '@nestjs/common';
import { ProviderWsBridgeModule } from '@barfinex/provider-ws-bridge';
@Module({
imports: [
ProviderWsBridgeModule.forRoot({
redis: {
host: process.env.REDIS_HOST || 'localhost',
port: Number(process.env.REDIS_PORT || 6379),
},
subscriptions: (process.env.WS_CHANNELS || 'orders,candles,accounts').split(','),
parseJson: true,
log: true,
}),
],
})
export class AppModule {}What's included
| Export | Purpose |
|--------|--------|
| ProviderWsBridgeModule | NestJS module with forRoot() config (redis, subscriptions, parseJson, log). |
| RedisService | Redis client used by the bridge. |
| SocketGateway | Socket.IO gateway that emits events to clients. |
| Types & tokens | For DI and custom configuration. |
Documentation
- Barfinex overview — First Steps, Architecture (event bus and Provider WebSocket).
- Provider — Installation provider, Docker Compose for Provider, Provider API reference.
- Studio — Terminal Configuration, Registering Provider in Studio.
- Troubleshooting — Typical problems and solutions.
Contributing
Ideas and PRs welcome. Community: Telegram · GitHub.
License
Licensed under the Apache License 2.0 with additional terms. Attribution to Barfin Network Limited and a link to https://barfinex.com are required. See LICENSE and the Barfinex site for details.
