This page explains the backend architecture modeled by the wiseinvest-backend-homepage repository. The canonical source for this view is the Mermaid diagram definition in /wiseinvest-system-design.mmd, which is rendered as /wiseinvest-system-design.png and embedded or referenced from index.html.
End users reach the backend through Cloudflare Tunnel:
Users → CF in the diagram shows Cloudflare acting as the external edge.ssh.wiseinvestbackend.in – SSH access endpointairflow.wiseinvestbackend.in – Airflow UI and schedulergrafana.wiseinvestbackend.in – Grafana dashboardsprometheus.wiseinvestbackend.in – Prometheus UIwiki.wiseinvestbackend.in – Wiki.js frontendnewsapi.wiseinvestbackend.in – News-related API (not expanded in the current diagram)n8n.wiseinvestbackend.in – n8n automation UI and webhook entrypointswealth.wiseinvestbackend.in – Public entrypoint for the wealth-api serviceThese subdomains represent the primary entrypoints into the backend services from the public internet or from trusted users.
Within the Backend services subgraph, the following long-running services are modeled:
daily_news_analytics (:3000:3000) – A service running on port 3000. The exact route structure is not defined in this repository; the diagram only records its presence and port mapping.dockerllm (:5001:5001,5002:5002) – A service exposing LLM-related functionality on ports 5001 and 5002.n8n (:5678:5678) – The n8n workflow automation service, typically exposing a web UI and webhook endpoints.superset (:8088:8088) – Apache Superset analytics UI and API.wealth-api (:7070:7070) – The primary API for WiseInvest’s wealth functionality.wikijs (:3100:3100) – Wiki.js content management and documentation frontend.This repository does not contain the code for these services; it only documents their existence, names, and ports. Detailed routes/handlers for wealth-api and other services live in their respective service repositories.
The Data stores subgraph models shared infrastructure that multiple services depend on:
postgres – Primary relational database used by:
n8nwealth-apiwikijsredis – In-memory cache / data store used by:
cadvisordaily_news_analyticssupersetIn the diagram, directed edges show these dependencies (for example, wealth_api → postgres and superset → redis). Use this as a reference when reasoning about data flows and potential contention between services.
The Observability subgraph groups monitoring and logging tools:
blackbox – Blackbox exporter probing external endpointscadvisor – Container and host metrics collector, also writing to redisgrafana – Visualization layer for metrics and logsloki – Log aggregation and queryingprometheus – Metrics scraping and storages3-exporter – Exposes S3-related metricsThe diagram shows a high-level relationship where the Backend services subgraph is connected to Obs via a dashed arrow (Backend -.-> Obs), indicating that observability components monitor the backend services without being on the critical request path.
The index.html file in this repository acts as a documentation and navigation homepage for the backend:
wiseinvest-system-design.png).This repository does not define application-level routes or HTTP handlers. Instead, it documents the primary network entrypoints into the wider backend system:
Users → CF)wealth-api.The concrete route structures (for example, /api/v1/* paths on wealth.wiseinvestbackend.in) are implemented in other codebases. When you change routes or add new services, regenerate /wiseinvest-system-design.mmd and /wiseinvest-system-design.png via the architecture-publisher tooling so that this homepage stays accurate.
At a high level, data flows as follows:
wealth.wiseinvestbackend.in → wealth-api).postgres or redis according to their role.This model should be treated as a living document; architecture updates must be reflected in the Mermaid diagram to keep the homepage and this overview in sync.