Reference sample

CleenUIvs.eShopOnContainers / eShop

Microsoft's eShop is a reference sample demonstrating microservices and .NET patterns; CleenUI is a production codebase intended to be the actual application you ship.

Where they fit

eShopOnContainers (and its successor eShop) is Microsoft's flagship reference sample for .NET — a polyglot e-commerce site demonstrating microservices, event-driven architecture, Docker, Kubernetes, and most major .NET libraries. It's a teaching tool — read it, fork it, adapt patterns from it. CleenUI is the opposite end of the spectrum: a production-intent codebase you license and ship as your own application. The two compare more like 'reference sample vs. production codebase' than 'starter A vs. starter B.'

Side by side

CategoryCleenUIeShopOnContainers / eShop
IntentProduction-intent codebase (ship as your own)Reference sample / teaching tool
Distribution modelLicensed source code (one-time license)Open-source GitHub repo (MIT)
Architecture styleModular monolith (vertical-slice modules in one deployable)Microservices (multiple bounded contexts, event bus)
DomainGeneric SaaS foundation (auth, accounts, support, observability, translations, notifications, messaging, tasks, AI, etc.)E-commerce (catalog, basket, ordering, payment)
FrontendSingle React 18 SPA frontendMultiple — Blazor, MAUI, React Native, MVC web UI
Operational complexityLow — single Web API, single SQL DB, WebJobs + FunctionsHigh — Docker Compose, Kubernetes, service bus, multiple databases
Onboarding modelArchitect-led delivery availableClone the repo, read the docs
Pricing modelCustom-scoped engagementFree

When to pick which

Pick eShopOnContainers / eShop

Pick eShop when you're learning .NET microservices, when you specifically need an event-driven multi-service architecture, or when budget rules out a licensed codebase.

Pick CleenUI

Pick CleenUI when you're shipping a real product and want the foundation to be the codebase rather than a sample you have to rewrite. Modular monolith over microservices is the right fit for most B2B SaaS teams in the 2-20 engineer range.

What they share

  • Both are .NET-based
  • Both target line-of-business / commerce-style workloads
  • Both demonstrate enterprise-grade .NET patterns end-to-end