1.9 KiB
1.9 KiB
Finlytic Backend Gateway
Finlytic Backend is the central ASP.NET Core Web API gateway and SignalR real-time broker for the Finlytic ecosystem. It serves external clients (FinlyticApp, FinlyticWeb) via REST endpoints and WebSockets, while interfacing internally with background microservices strictly via MQTT.
Architecture & Responsibilities
-
Single Public Entrypoint:
- The only backend microservice hosting Kestrel HTTP REST and SignalR WebSocket endpoints.
-
JWT Authentication & User Management:
- Manages user registration, login, JWT token issuance (
IJwtTokenService), and role-based access control (Admin, Premium, User).
- Manages user registration, login, JWT token issuance (
-
SignalR Real-Time Hubs:
NewsHub(/hubs/news): Broadcasts live news articles and sentiment classifications.TradeHub(/hubs/trade-updates): Broadcasts live trade proposals and position updates.TradeRealtimeHub(/hubs/trades): Legacy real-time trade signals hub.
-
MQTT Bridge (
BackendMqttBridge&WebMqttClient):- Subscribes to internal MQTT topics (
finlytic/news/#,finlytic/sentiment/#,finlytic/trades/#,finlytic/fundamentals/#,finlytic/ta/#). - Forwards MQTT messages to connected SignalR WebSockets and executes MQTT RPC requests for REST controllers.
- Subscribes to internal MQTT topics (
Feature Status
Implemented Features
- JWT Authentication & User Persistence (
BackendDbContext). - REST Controllers:
AuthController,NewsController,AssetsController,UserTradesController,UserFavoritesController,AdminController. - SignalR WebSockets for News & Trades (
NewsHub,TradeHub). - MQTT Bridge & RPC Gateway Client (
BackendMqttBridge,WebMqttClient). - Complete removal of mock data in REST responses.
Planned Features
- OAuth2 / Social Login integration (Google / Apple Sign-In).
- Two-Factor Authentication (2FA / TOTP).