kumiko.rocks beta
CashColt

Showcase · live in production

CashColt.
A credit planner, built end-to-end on Kumiko.

Multi-tenant credit & mortgage planner. Model annuity, bullet or fixed-amortization loans, schedule extra payments, and see a live payoff plan with remaining-debt-as-of-today. Event-sourced core, rich React charts, four pricing tiers — all from defineFeature. Live at cashcolt.kumiko.rocks.

Why this showcase matters

  • Rich UI, not a CRUD form: Recharts payoff curves, a live amortization table, scenario compare — the kind of interface a framework is usually told it can't do.
  • Event-sourced by default: A loan stores only its inputs as events. The full repayment schedule is derived, never persisted — change one number and the whole plan recomputes.
  • Tiers that actually gate: Free / Pro / Expert / Enterprise with real caps (5 / 50 / 500 / ∞ loans) and a 30-day Expert trial — all from tier-engine + cap-counter.
  • Compliance came for free: Auth, multi-tenant, self-service account, legal pages, GDPR data-rights — every supporting feature is a bundled-feature, not bespoke code.
cashcolt.kumiko.rocks
CashColt portfolio dashboard — remaining debt, monthly rate and payoff chart
Visit cashcolt.kumiko.rocks → Get started
cashcolt.kumiko.rocks · Rechner
CashColt loan calculator — inputs, live amortization chart and month-by-month schedule

How it's built

The app is the credit logic. Everything else is bundled.

Event-sourced loan aggregate

Inputs as events, plan as projection

Each loan persists only its inputs — principal, rate, repayment, and the list of extra payments — as immutable events. The month-by-month amortization schedule is computed on read, never stored. The amortization engine lives in @cosmicdrift/kumiko-credit; CashColt just wires it.

Temporal read-time queries

Remaining debt, as of today

"Restschuld heute" isn't a stored column — it's the schedule evaluated at the current date across every loan in a tenant's portfolio, alongside interest saved by extra payments. Past, present and projected future from one event stream.

tier-engine + cap-counter + tags

Four tiers, real limits, gated extras

Free 5 loans, Pro 50, Expert 500, Enterprise unlimited — enforced per tenant via cap-counter. New signups get a 30-day Expert trial, then fall back to their stored tier. Contract packages are an Expert+ extra, gated by the tags bundled-feature.

Kumiko web renderer + custom screens

Auto-UI where it fits, React where it counts

Entity admin comes from Kumiko's renderer for free; the dashboard, calculator and amortization-planner are custom React screens with Recharts. Same feature graph, two rendering strategies, one bundle.

auth · user-profile · user-data-rights · legal-pages

Everything around the product is bundled

Email/password auth, multi-tenant identity, a self-service account screen, GDPR export/erasure via user-data-rights + data-retention, and legal pages from text-content — composed in, not rebuilt.

Hosting reality

One container image (ghcr.io/.../money-horse), one Kubernetes deployment on Hetzner behind Nginx-Ingress, Postgres 18 on a shared CNPG cluster, TLS via Let's Encrypt, transactional mail through Brevo. Multi-tenant: many credit workspaces on one instance, customer traffic live at cashcolt.kumiko.rocks.

If we built this — your tool too.

A planner this interactive, multi-tenant, audit-friendly and on-prem-ready, mostly assembled from bundled-features. Asset tracker, helpdesk, CRM, internal portal — same framework, same story. Pilot program: 3–5 slots, joint setup sprint, free for 3 months in exchange for an honest reference story (your veto on every sentence).