Building Caresse
A series of technical articles published on Medium: .NET 10 architecture, LLM pipeline orchestration, integration testing without touching production.
Ports, adapters, and a real-world provider registry in .NET 10 that lets us swap LLM and TTS vendors without ever touching the domain.
Read on Medium
One user prompt, 8 sequential stages, a different model per stage, and a self-critique step that improves the output before it ever reaches TTS.
Read on Medium
Testcontainers for PostgreSQL, Azurite for Azure Blob, a custom auth handler replacing Firebase, and WireMock.Net for RevenueCat, LLM providers and TTS — all wired into one xUnit suite that runs in CI with zero external dependencies.
Read on Medium