← Back to index

dashboard-service

Repo: dashboard-service

Summary

Spring Boot service providing dashboard-related APIs for Pickrr/Fastrr, aggregating operational, finance, catalog, promotion, and engagement data. It reads from multiple MongoDB databases and ClickHouse for analytics/reporting, uses Redis for caching/session support, and integrates with internal microservices plus external systems like Google Analytics and AWS (S3/SES). It also produces/consumes Kafka events for reporting and webhooks.

Responsibilities

Dependencies

Architecture Diagram

dashboard-service architecture diagram

Mermaid Source

flowchart LR
  U[Dashboard UI / Client] -->|HTTPS| DS[dashboard-service]
  DS -->|Config fetch| CS[Spring Cloud Config Server]
  DS -->|Read/Write| M1[(MongoDB Primary)]
  DS -->|Read| M2[(MongoDB Reporting/Tracking)]
  DS -->|Read| CH[(ClickHouse)]
  DS -->|Cache/Session| R[(Redis)]
  DS <--> K[Kafka]
  DS --> AG[aggregator-service]
  DS --> CAT[catalog-service]
  DS --> PRO[promotion-service]
  DS --> PAY[payment-aggregator]
  DS --> FIN[fastrr-finance]
  DS --> OMS[fastrr-oms]
  DS --> URL[url-shortner]
  DS --> COM[communication-service]
  DS --> LAT[laterr-service]
  DS --> GA[Google Analytics]
  DS --> S3[AWS S3]
  DS --> SES[AWS SES]
  DS --> CT[CleverTap]
  DS --> MO[MoEngage]
  DS --> CP[CredPay API]

DFD Diagram

dashboard-service DFD diagram

Mermaid Source

flowchart TB
  %% External Entities
  E1[External Entity: Dashboard UI/Client]
  E2[External Entity: Internal Services
(aggregator/catalog/promotion/payment/finance/OMS/url/communication/laterr/identity)]
  E3[External Entity: Third-Party APIs
(Google Analytics, CleverTap, MoEngage, CredPay)]
  E4[External Entity: AWS (S3, SES)]

  %% Process
  P1([Process: dashboard-service
Dashboard APIs & Aggregation])

  %% Data Stores
  D1[(Data Store: MongoDB
(primary/secondary/reporting/tracking/shopify))]
  D2[(Data Store: ClickHouse)]
  D3[(Data Store: Redis)]
  D4[(Data Store: Kafka Topics)]
  D5[(Data Store: Config Server Properties)]

  %% Flows
  E1 -->|API requests| P1
  P1 -->|API responses| E1

  P1 <-->|Service calls| E2
  P1 <-->|API calls| E3
  P1 -->|Store reports / send emails| E4

  P1 <-->|Read/Write| D1
  P1 <-->|Read| D2
  P1 <-->|Cache/Session| D3
  P1 <-->|Publish/Consume events| D4
  P1 -->|Fetch configuration| D5