real-time notification delivery service for the Tana blockchain platform.
tana-notifications handles push notifications and real-time alerts across the Tana ecosystem. it connects to the event bus to receive system events and routes them to users through various channels.
the service subscribes to Redis streams from the event bus and processes events based on user notification preferences. when a relevant event occurs (transaction received, block finalized, contract executed), it formats the notification and delivers it through the appropriate channel.
event-bus (Redis streams)
|
v
tana-notifications
|
+----+----+
| |
SSE WebSocket
| |
v v
web app mobile app
built with TypeScript and Hono for the HTTP layer. uses server-sent events (SSE) for web clients and WebSocket connections for mobile apps. subscribes to Redis streams for event ingestion.
the service maintains per-user notification preferences stored in PostgreSQL, allowing users to configure which events they want to receive and through which channels.
tana-notifications runs as part of the Tana service mesh, coordinated by tana-engine. it requires access to the event bus Redis instance and the shared PostgreSQL database for user preferences.
real-time notification delivery service for the Tana blockchain platform.
tana-notifications handles push notifications and real-time alerts across the Tana ecosystem. it connects to the event bus to receive system events and routes them to users through various channels.
the service subscribes to Redis streams from the event bus and processes events based on user notification preferences. when a relevant event occurs (transaction received, block finalized, contract executed), it formats the notification and delivers it through the appropriate channel.
event-bus (Redis streams)
|
v
tana-notifications
|
+----+----+
| |
SSE WebSocket
| |
v v
web app mobile app
built with TypeScript and Hono for the HTTP layer. uses server-sent events (SSE) for web clients and WebSocket connections for mobile apps. subscribes to Redis streams for event ingestion.
the service maintains per-user notification preferences stored in PostgreSQL, allowing users to configure which events they want to receive and through which channels.
tana-notifications runs as part of the Tana service mesh, coordinated by tana-engine. it requires access to the event bus Redis instance and the shared PostgreSQL database for user preferences.