cleavestack

.NET application framework + architecture practice

Build as one.
Ship as many.

Cleavestack scaffolds a modular monolith your team can ship this quarter, and enforces the boundaries that let you extract microservices later. No rewrite. The exit is built in from the first commit.

The name

One word, both meanings

cleave

verb · Old English clifian

to adhere firmly; to cling together

Your modules share one process, one deploy, one debugger, one pull request. Monolith speed while you find the product.

cleave

verb · Old English cleofan

to split cleanly, along a natural plane

When one module needs its own scale, team, or release cadence, it leaves as a service. Along prepared lines, not a tear.

"Cleave" is one of English's few contronyms: it means both things at once, and so does your architecture. A stonemason does not smash rock; a clean cleave follows the plane the material already has. Cleavestack builds those planes into your codebase from day one.

Why teams pick it

The rewrite is the enemy

Microservices on day one distribute a system nobody understands yet. An unstructured monolith collapses into the big ball of mud. Both roads end in a rewrite. Cleavestack is the third road.

01 · Monolith speed

A running app in one command

One template scaffolds a warning-free solution: DDD aggregates, CQRS with a decorator pipeline, a transactional outbox, and Aspire orchestration, all wired. Fifteen packages, one lockstep version.

02 · Enforced discipline

Boundaries that fail the build

Module isolation is not a convention on a wiki. Ninety-three architecture fitness tests and a compile-time layer guard reject the violating commit. Seventy ADRs record why every rule exists.

03 · The exit, built in

Extraction without rewrite

Database-per-module, events through an outbox, transport at the edge, gRPC contracts, JWKS auth. A module becomes its own service by composition change. Proven under live conference traffic on Azure.

15
NuGet packages, lockstep-released
70
Architecture Decision Records
93
Fitness tests that gate the build
3
Reference apps, one in production
Apache 2.0
Open source, no strings

How it works

From zero to cleaved, three moves

$ dotnet new install MMCA.Templates
$ dotnet new mmca-app -n Contoso.Support \
    --module Orders --aggregate Order
12 projects, 5 layers, 0 warnings
$ dotnet test --solution Contoso.Support.slnx
passed, including 93 architecture rules
$ # years later, when Orders needs to scale:
$ # move the module behind the gateway.
$ # domain code untouched.
  • 01

    Scaffold

    One command writes the solution: five layers, tests, migrations, local orchestration with SQL Server in a container. Green before you touch it.

  • 02

    Build inside the lines

    Add modules and vertical slices with their own templates. The fitness tests keep every module extractable while the team ships features.

  • 03

    Cleave when ready

    Promote a module to its own service host behind the gateway. Events keep flowing through the outbox; auth keeps working over JWKS. The domain never hears about it.

Services

The framework is free. The judgment is the product.

Every engagement runs on the same public rubric and the same evidence standard the framework applies to itself.

Start here

Cleavestack Assessment

Your .NET estate scored against the public 34-category rubric, on two axes, with cited evidence and a prioritized remediation plan. The same scorecard the framework publishes about itself.

Fixed fee · 2 weeks

Cleavestack Workshop

DDD, Clean Architecture, and CQRS taught hands-on: your engineers build a real module end to end on the framework, and leave with it running.

Fixed fee · 2-3 days, on site or remote

Cleavestack Advisory

Embedded architecture guidance: adopt the framework, shape modules on real domain boundaries, and run your first extraction with a hand on the rail.

Retainer or time and materials

Open source

Powered by MMCA

Cleavestack is the commercial home of MMCA, the open-source modular monolith framework for .NET. Everything the services teach is public: the packages, the reference apps, the ADRs, and the scorecards that grade them.

  • Fifteen packages on nuget.org, credential-free install
  • Three reference apps, from minimal seed to four-service production deploy
  • Seventy ADRs: the why behind every pattern
  • Public architecture scorecards, gaps included
  • .NET 10, C# 14, Aspire, EF Core, Blazor, MAUI