# chuongbdhe172784/carebridge_sep490_g79 architecture

> Architecture diagram of the GitHub repository chuongbdhe172784/carebridge_sep490_g79, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-10). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/chuongbdhe172784/carebridge_sep490_g79
- Repository: https://github.com/chuongbdhe172784/carebridge_sep490_g79

## Overview

CareBridge is a maternal and early-childhood care platform. Families use its web and mobile clients to access care journeys, baby tracking, expert/community support, and AI-assisted triage; clinicians and administrators provide consultation and operational oversight. The AI path combines backend triage enrichment with a separate RAG service and document-ingestion knowledge base. The README documents broader platform capabilities, while sampled source directly verifies only selected RAG and ingestion relationships; other cross-service links are left unasserted.

Main entry points: [`05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/BackendApplication.java`](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/BackendApplication.java) (Backend API), [`05_Development/CareBridgeWebApp/src/App.tsx`](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeWebApp/src/App.tsx) (Web portal), [`05_Development/CareBridgeAITriageService/app/services/rag_chat_service.py`](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAITriageService/app/services/rag_chat_service.py) (RAG chat), [`05_Development/CareBridgeMobileApp/android/app/src/main/java/com/carebridge/app/MainActivity.java`](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeMobileApp/android/app/src/main/java/com/carebridge/app/MainActivity.java) (Mobile app)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_experience["Care experiences"]
  node_web["Web portal<br/>[App.tsx]"]
  node_mobile["Mobile app<br/>[MainActivity.java]"]
  node_backend["Backend API"]
end

subgraph group_care["Care domains"]
  node_identity["Identity and access<br/>[AuthService.java]"]
  node_maternal["Maternal journey"]
  node_baby["Baby care and growth"]
  node_carejourney["Logs and milestones"]
  node_expert["Expert consultation"]
  node_community["Community and content"]
end

subgraph group_assistance["AI assistance"]
  node_triage["Triage enrichment"]
  node_ragpolicy["RAG policy"]
  node_ragservice["RAG service<br/>[RagService.java]"]
  node_aiapi["AI triage API<br/>[chat.py]"]
  node_ragchat["RAG chat"]
  node_ingestion["Knowledge ingestion"]
  node_vector[("Vector knowledge store<br/>[vector_store.py]")]
end

subgraph group_operations["Trust and operations"]
  node_moderation["AI moderation"]
  node_familycare["Family cooperative care<br/>[CareTaskDto.java]"]
  node_emergency["Emergency safety"]
  node_audit["Audit and administration"]
end

node_families(("Families"))
node_experts(("Experts"))
node_admins(("Administrators"))
node_gemini["Gemini AI"]

node_families -->|"use"| node_web
node_families -->|"use"| node_mobile
node_experts -->|"use"| node_web
node_admins -->|"manage"| node_web
node_web -.->|"access"| node_backend
node_mobile -.->|"access"| node_backend
node_backend -.->|"authenticate"| node_identity
node_backend -.->|"serve journey"| node_maternal
node_backend -.->|"serve profiles"| node_baby
node_backend -.->|"serve tracking"| node_carejourney
node_backend -.->|"support consultation"| node_expert
node_backend -.->|"support community"| node_community
node_maternal -.->|"enrich triage"| node_triage
node_triage -->|"request answer"| node_ragpolicy
node_ragpolicy -.->|"delegate"| node_ragservice
node_backend -.->|"call service"| node_aiapi
node_aiapi -.->|"dispatch chat"| node_ragchat
node_ingestion -->|"write chunks"| node_vector
node_ragchat -.->|"retrieve context"| node_vector
node_ragchat -.->|"generate response"| node_gemini
node_backend -.->|"moderate content"| node_moderation
node_backend -.->|"coordinate care"| node_familycare
node_backend -.->|"escalate safety"| node_emergency
node_backend -.->|"record operations"| node_audit

click node_web "https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeWebApp/src/App.tsx"
click node_mobile "https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeMobileApp/android/app/src/main/java/com/carebridge/app/MainActivity.java"
click node_backend "https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/BackendApplication.java"
click node_identity "https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/security/service/AuthService.java"
click node_maternal "https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/triage/service/impl/CanonicalTriageSessionService.java"
click node_baby "https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/baby/service/impl/BabyServiceImpl.java"
click node_carejourney "https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/carejourney/controller/BabyDailyLogController.java"
click node_expert "https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/carejourney/controller/AppointmentPreparationController.java"
click node_community "https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/community/service/CommunityQuestionSearchService.java"
click node_triage "https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/triage/service/TriageRagEnrichmentService.java"
click node_ragpolicy "https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/integration/gemini/service/RagPolicyService.java"
click node_ragservice "https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/integration/gemini/service/RagService.java"
click node_aiapi "https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAITriageService/app/api/v1/chat.py"
click node_ragchat "https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAITriageService/app/services/rag_chat_service.py"
click node_ingestion "https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAITriageService/app/services/ingestion_service.py"
click node_vector "https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAITriageService/app/rag/vector_store.py"
click node_moderation "https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/aimoderation/service/AiAssessmentModeratorService.java"
click node_familycare "https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/family/dto/CareTaskDto.java"
click node_emergency "https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/ai/event/EmergencyEscalationTriggered.java"
click node_audit "https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/audit/controller/AuditController.java"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_web,node_mobile,node_backend toneBlue
class node_identity,node_maternal,node_baby,node_carejourney,node_expert,node_community toneAmber
class node_triage,node_ragpolicy,node_ragservice,node_aiapi,node_ragchat,node_ingestion,node_vector toneMint
class node_moderation,node_familycare,node_emergency,node_audit toneRose
class node_families,node_experts,node_admins,node_gemini toneIndigo
```

## Components

### Care experiences

- [Web portal](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeWebApp/src/App.tsx): `05_Development/CareBridgeWebApp/src/App.tsx`
- [Mobile app](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeMobileApp/android/app/src/main/java/com/carebridge/app/MainActivity.java): `05_Development/CareBridgeMobileApp/android/app/src/main/java/com/carebridge/app/MainActivity.java`
- [Backend API](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/BackendApplication.java): `05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/BackendApplication.java`

### Care domains

- [Identity and access](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/security/service/AuthService.java): `05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/security/service/AuthService.java`
- [Maternal journey](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/triage/service/impl/CanonicalTriageSessionService.java): `05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/triage/service/impl/CanonicalTriageSessionService.java`
- [Baby care and growth](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/baby/service/impl/BabyServiceImpl.java): `05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/baby/service/impl/BabyServiceImpl.java`
- [Logs and milestones](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/carejourney/controller/BabyDailyLogController.java): `05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/carejourney/controller/BabyDailyLogController.java`
- [Expert consultation](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/carejourney/controller/AppointmentPreparationController.java): `05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/carejourney/controller/AppointmentPreparationController.java`
- [Community and content](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/community/service/CommunityQuestionSearchService.java): `05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/community/service/CommunityQuestionSearchService.java`

### AI assistance

- [Triage enrichment](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/triage/service/TriageRagEnrichmentService.java): `05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/triage/service/TriageRagEnrichmentService.java`
- [RAG policy](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/integration/gemini/service/RagPolicyService.java): `05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/integration/gemini/service/RagPolicyService.java`
- [RAG service](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/integration/gemini/service/RagService.java): `05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/integration/gemini/service/RagService.java`
- [AI triage API](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAITriageService/app/api/v1/chat.py): `05_Development/CareBridgeAITriageService/app/api/v1/chat.py`
- [RAG chat](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAITriageService/app/services/rag_chat_service.py): `05_Development/CareBridgeAITriageService/app/services/rag_chat_service.py`
- [Knowledge ingestion](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAITriageService/app/services/ingestion_service.py): `05_Development/CareBridgeAITriageService/app/services/ingestion_service.py`
- [Vector knowledge store](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAITriageService/app/rag/vector_store.py): `05_Development/CareBridgeAITriageService/app/rag/vector_store.py`

### Trust and operations

- [AI moderation](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/aimoderation/service/AiAssessmentModeratorService.java): `05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/aimoderation/service/AiAssessmentModeratorService.java`
- [Family cooperative care](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/family/dto/CareTaskDto.java): `05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/family/dto/CareTaskDto.java`
- [Emergency safety](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/ai/event/EmergencyEscalationTriggered.java): `05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/ai/event/EmergencyEscalationTriggered.java`
- [Audit and administration](https://github.com/chuongbdhe172784/carebridge_sep490_g79/blob/main/05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/audit/controller/AuditController.java): `05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/audit/controller/AuditController.java`

### Other components

- **Families**
- **Experts**
- **Administrators**
- **Gemini AI**

## Connections

- Families → Web portal: use (evidence: `README.md`)
- Families → Mobile app: use (evidence: `README.md`)
- Experts → Web portal: use (evidence: `README.md`)
- Administrators → Web portal: manage (evidence: `README.md`)
- Web portal → Backend API: access
- Mobile app → Backend API: access
- Backend API → Identity and access: authenticate
- Backend API → Maternal journey: serve journey
- Backend API → Baby care and growth: serve profiles
- Backend API → Logs and milestones: serve tracking
- Backend API → Expert consultation: support consultation
- Backend API → Community and content: support community
- Maternal journey → Triage enrichment: enrich triage
- Triage enrichment → RAG policy: request answer (evidence: `05_Development/CareBridgeAPI/src/main/java/com/carebridge/backend/triage/service/TriageRagEnrichmentService.java`)
- RAG policy → RAG service: delegate
- Backend API → AI triage API: call service
- AI triage API → RAG chat: dispatch chat
- Knowledge ingestion → Vector knowledge store: write chunks (evidence: `05_Development/CareBridgeAITriageService/app/services/ingestion_service.py`)
- RAG chat → Vector knowledge store: retrieve context (evidence: `05_Development/CareBridgeAITriageService/app/services/rag_chat_service.py`)
- RAG chat → Gemini AI: generate response
- Backend API → AI moderation: moderate content
- Backend API → Family cooperative care: coordinate care
- Backend API → Emergency safety: escalate safety
- Backend API → Audit and administration: record operations
