// the find
davidfowl/aspire-ai-chat-demo
Aspire AI Chat is a full-stack chat sample that combines modern technologies to deliver a ChatGPT-like experience.
A full-stack ChatGPT-style demo from David Fowl (ASP.NET team lead at Microsoft) that wires together Aspire, SignalR, Redis, PostgreSQL, YARP, and Microsoft.Extensions.AI in one runnable sample. It's primarily a reference architecture showing how all these pieces fit together, not a starter kit for production use.
The IChatClient abstraction from Microsoft.Extensions.AI is the main thing worth studying here — it lets you swap Ollama locally and OpenAI in prod without touching the chat logic. The Redis pub/sub approach for broadcasting streaming tokens across multiple SignalR connections is a real pattern that most chat demos skip entirely. Aspire orchestration handles the entire local dev setup including Postgres and Redis containers with a single command, which is genuinely useful. The CI/CD pipeline is defined in C# alongside the AppHost rather than buried in YAML, which is an interesting idea that Aspire's new pipeline feature enables.
No authentication whatsoever — conversations are not tied to users, so this is purely a single-tenant local demo. The macOS/Linux split where macOS gets OpenAI and Linux gets Ollama is an odd default that will confuse anyone who wants to run it differently. Conversation history is stored but there's no visible token budget management, so long conversations will quietly blow past context limits depending on the model. Being from the ASP.NET team lead means the .NET patterns are solid but the React frontend is clearly not the focus — it's functional but minimal.