The foundation

Two foundations. The hard 80% already solved and tested.

Most products die in the plumbing: auth, billing, tenancy, background jobs. I built that plumbing twice, as two separate codebases, each architected for its business model, carrying 10,000+ unit and integration tests between them, so every build starts at your features, not a blank repo. You ship on the one that fits: 3,500+ tests on the user-gated foundation, 6,500+ on the tenant-gated one.

Specification

Two codebases. Pick by the gate, read the spec.

Note — The only architecture decision you make is the gate: does your product charge people, or companies? Everything behind the gate is already built and tested.

B2C foundation · User-gated
Monolith. Folder-bounded.

Its own codebase: one deployable with folder-based module boundaries, simple to operate and fast to iterate. Everything gates on the individual user: identity, subscription, entitlements, limits.

Architecture
Monolith · folder-based modules
Identity
ASP.NET Identity · Social · MFA · Sessions
Isolation
User-scoped data · everywhere
Gating
Per-user entitlements & limits
Billing
RevenueCat · trials · upgrades
Onboarding
Self-serve · email verification
Tests
3,500+
Powers → WorklaneOS was built on it
B2B foundation · Tenant-gated
Modular monolith. Extraction-ready.

Its own codebase: modules bounded by project, ready to extract into microservices when scale demands, with no rewrite. Everything gates on the tenant: isolation, seats, roles, invites, audit. It serves individuals too. A solo customer is a tenant of one, and that account grows into a team without a migration.

Architecture
Modular monolith · extraction-ready
Identity
AWS Cognito · Social · MFA · Sessions
Isolation
Tenant-scoped data · everywhere
Gating
Org entitlements · roles · invites
Billing
Paddle & Dodo · seats · proration
Onboarding
Self-serve · email verification
Governance
Audit trail · admin viewer
Solo users
Supported (tenant of one)
Tests
6,500+ (plus 400+ on the AI service)
Powers → WorklaneOS is being ported to it
Drawn byJesse Nicodemus
Stack.NET 10 · PostgreSQL · Docker
GateUser or tenant — your only decision
Deliverables

Every build ships with the client-facing stack.

Backend on the matching foundation, plus its client stack. The bundle differs by which foundation fits.

B2C bundle
Admin panel
React
Back-office management, audit viewer, feature-flag controls
Client app
Next.js or React
Your customer-facing web application
Mobile
Flutter
One cross-platform app for iOS and Android
B2B bundle
Admin panel
React
Back-office management, audit viewer, feature-flag controls
Client app
Angular
Your customer-facing web application
On-Demand Mobile
Flutter
One cross-platform app for iOS and Android

Section A-A · through a client build

Your features are the only part left to machine.

Admin panel
Client app
Mobile
Your product
machined to your spec — this is where the work starts
Auth
Identity (B2C) · Cognito (B2B) · MFA
Billing
RevenueCat (B2C) · Paddle & Dodo (B2B)
Jobs
Outbox · retries · cleanup
Email
Templates · SMTP · SES
Flags
Rollout % · kill-switches
Caching
L1/L2 · Redis · compiled queries
.NET 10 · PostgreSQL · Docker · Redis
Weeks, not quarters — the build starts here, not at a blank repo
Already built and tested — 3,500+ or 6,500+, depending on which foundation fits

Hatched — existing material. Both foundations are private codebases; Shopilent, the open-source backend built to the same standard, is not: 4,000+ tests, public on GitHub.

The license, in plain words
You get
  • Full source of your product, foundation included
  • Host anywhere, modify freely for your business
  • Perpetual license — no ongoing fees to keep running
I keep
  • The foundation IP — it powers every build
  • No redistributing the foundation source
  • No building new products on top of it

Build it once.
Scale on it.

Tell me what you're building, or what your AI-built MVP is struggling with. I reply within 24 hours with an honest read.

Pending approval
Drawn byJesse Nicodemus
Reply within24 hours
Approved byStart a project