App Stack
| Module | Purpose |
|---|---|
| Blazor Server App (.NET 8) | C# and Razor components with a persistent SignalR connection to the server |
| MudBlazor | UI Library for Blazor apps |
| Azure SDK | C# classes to access key vault secrets |
| Azure OpenAI SDK | C# classes to stream AI-generated responses |
| Markdig | C# classes to handle the markdown responses from Azure OpenAI |
Cloud Stack
| Service | Purpose |
|---|---|
| Microsoft Entra ID | Authenticating internal staff users |
| Azure Key Vault | Securing app secrets |
| Azure Storage | Storing files (blobs) |
| Azure AI Search | Indexing files as smaller chunks & using vectorized semantic search |
| Azure OpenAI | RAG responses using indexes from Azure AI Search |
| Azure Cosmos DB | Storing app-level data (i.e., messages, conversations, user permissions, etc.) |
| Azure App Service | A managed web app service for hosting Numa |
| Azure App Service Plan | Scalable hosting for one or more Azure App Services |
