How a single prompt travels from your keyboard through the FastAPI gateway, ACL middleware, provider router, and streaming response — plus how RAG retrieves and reranks context.
Internal Services
External AI Providers
RAG Pipeline
CLI Client
Claude Code / Cursor
OllamoMUI Proxy
localhost:11434
PostgreSQL
Memory & Sessions
ACL Middleware
Auth & Rate Limiting
Provider Router
Smart Model Selection
Stream Handler
SSE Response Buffer
OpenAI
gpt-4o, o1-pro
Anthropic
claude-3.7-sonnet
Groq
llama-3.3-70b
DeepSeek
deepseek-v3
Gemini
gemini-2.5-pro
Monitoring & Logging
Prometheus + Loki
Error Handler
Retry / Fallback / Circuit Breaker
Document Upload
PDF / TXT / CSV
Chunking
Split into Passages
Embedding
Vector Representation
pgvector Index
Cosine Similarity
pg_trgm Index
Fuzzy Keyword Match
User Query
Natural Language
Semantic Search
Vector Cosine Sim
Keyword Search
pg_trgm Fuzzy
Merge & Rerank
Cross-Encoder
LLM Provider
Context Injection
🔄 Request Lifecycle
📚 Hybrid RAG Pipeline
Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.
Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.
Deployment Architecture
How the frontend, backend, database, and client apps connect through Cloudflare, Vercel, Render, and NeonDB.
Cloud Infrastructure
External Services
User / Browser
Desktop, Mobile, CLI
Cloudflare Tunnel
DDoS mitigation & SSL
Vercel (Frontend)
Next.js static export
Render (Backend)
FastAPI + Uvicorn
NeonDB (PostgreSQL)
pgvector + pg_trgm
GitHub
Source code & releases
Lemon Squeezy
Payment processing
Desktop EXE
PySide6 + QML bundle
Mobile App
React Native + Expo
☁️ Deployment Architecture
Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.
Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.
Auth & Security Flow
How every request is rate-limited, authenticated via session cookie or API key, authorized by role, and logged to the audit trail.
Authz Services
Data Stores
Client Request
API key or session cookie
Rate Limiter
Sliding window per IP/key
ACL Middleware
Role & scope check
Auth Resolver
Session / API key / none
Sessions Table
Token → email lookup
API Keys Table
Key hash → role lookup
Users Table
Email, role, subscription
Audit Log
All auth events recorded
Allow → Route
Request proceeds
🔐 Auth & Security Flow
Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.
Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.
Waterfall SDLC
The sequential software development lifecycle that guided OllamoMUI from requirements through maintenance — with feedback arcs linking later phases back to earlier ones.
1. Requirements
Gather specs & define scope
2. Design
System architecture & UI mockups
3. Implementation
Code the backend, frontend, clients
4. Testing
Unit, integration, E2E, security
5. Deployment
Release to Vercel, Render, stores
6. Maintenance
Bug fixes, updates, monitoring
PRD & User Stories
Functional specification
Figma Mockups & ERD
UI/UX + database schema
Source Code & Assets
FastAPI, Next.js, QML, RN
Test Reports & QA
Coverage, benchmarks
Live Site & Binaries
vercel.app + EXE + APK
CHANGELOG & Issues
GitHub releases & roadmap
Feedback Loops
Issues → earlier phases
🌊 Waterfall SDLC
Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.
Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.