Layer 1 · Users
Layer 2 · Authentication
Azure Entra ID (MSAL)Auth
MSAL / OIDCJWT TokensMFA Enforcement
RBAC PoliciesConditional AccessService Principal
Layer 3 · Web App — Bertrandt/apps/frontend
React + Vite SPATypeScript
Dashboard Visualization
Design Management
Agent Chat — SSE
Document Generation
DFMEA Download
3rd Party Libraries: CAD Viewer · docx (Markdown→DOCX) · docx-preview (DOCX in browser) · @markdoc/markdoc (Markdown parsing)
Layer 4 · Middle Tier — Bertrandt/apps/backend
🏗️NestJS APIMiddle Tier
Auth Module
Design Module
User Module
Dashboard Module
File Upload and Stream
Knowledge Management
Connects to: PostgreSQL (knowledge docs, users, documents) · Azure Blob Storage · Agent layer (Express)
Layer 5 · Agent Gateway — Bertrandt/apps/agent
🚀Express AI
Express API + Socket.IOGateway
SSE Streaming
Agent Controller
Queue Jobs
OAuth Tokens + Caching
Fetch PDFs · Document Status · Queue Processing ·
Store/Delete Chunks · Job Queue · ← SSE Stream (Agent Chat)
Document Processing
Fetch Documents
Queue Processing
Document Status
Store/Delete Chunks
Job Queue → Redis
→ PostgreSQL
→ PGVector
→ Azure Blob Storage
→ Azure AI Foundry
🤖Agent FactoryOrchestration
Specialized Agents
Know-How GPT
DFMEA Draft
CAD Analyzer
Cockpit Design Agent
Steel Design Agent
Regulation Agent
Guidelines Agent
Knowledge Ingestion Agent
Quality Analyzer Agent
Agent Tools & Skills
Markdown Canvas
DFMEA Draft
Search Skills
Pre and Post Processors
3rd Party Libs
pandoc (DOCX→Markdown)
pdf-lib (PDF manipulation)
CAD (step file reader)
Microsoft Azure AI Foundry
OpenAI GPT-4/5
Engineering reasoning
Document analysis
Function calling
128k context
text-embedding-3-large
Embeddings gen.
RAG pipeline
Semantic search
Vector storage
Layer 6 · External Integrations
Azure AD / MSAL
SSO · Token refresh
Azure AI Foundry
GPT + Embeddings API