Live demo · free · Stripe in test mode
Open a hold and watch the credits leave your balance.
This is a running instance of the kit, not a video and not a screenshot tour. You sign up, you get 25 credits, you start a run, and you watch reserve, settle and release happen to your own balance in a real Postgres. Signing up sends a confirmation link to your inbox first, so budget a couple of minutes. Everything below says plainly which parts are real and which parts are not.
01 — Before you start
What is real here, and what is not.
Real
- The deployment is the kit
- Not a mockup of it. The pages you are about to use are the same files that ship in the repository, running against a Supabase Postgres project.
- The balance is not writable from a browser
- Every movement goes through a SECURITY DEFINER function that only the service role may execute. Row level security scopes every read to your own account.
- The ledger is append-only
- Each entry carries the balance it produced. A reconciliation query re-derives every balance from its entries, and it has to agree.
- Holds are real holds
- Starting a run moves credits out of your spendable balance into a reservation. Finishing charges it, failing returns it, and a run that stops reporting is released by the reaper without anyone noticing first.
Not real
- Stripe is in test mode
- No card is ever charged. Checkout accepts Stripe's test card 4242 4242 4242 4242 with any future expiry and any CVC. Do not type a real card number into it — there is nothing here that needs one.
- The work behind a run is a stub
- A run reserves credits, reports a heartbeat and settles like the real thing, but the provider it calls returns placeholder output. The lifecycle is the point; the output is not.
- The 25 starting credits were not paid for
- They are an administrator grant, written to the ledger as one. The first row in your activity table says so, because a balance that appeared from nowhere is exactly the thing this ledger exists to make impossible.
- It is a shared demonstration
- Other people are signing up to the same instance. Use an address you do not mind using, and do not put anything you care about in it.
02 — Two minutes
What to do once you are in.
Step 1
Create an account
Email and password. This deployment asks you to confirm the address first, so there is a link in your inbox to click before you are signed in. Open it in the same browser — the code it carries is paired with a cookie written here. Then you land on the dashboard, which is the screen the rest of this page is about.
Step 2
Get credits
You start with 25. Want more, or want to watch a payment reach the ledger? Buy a pack from the billing page with the test card — the Stripe webhook grants the credits and writes the purchase row.
Step 3
Start a run and watch the hold open
The demo run holds itself open for about 6 seconds so the reservation is visible at human speed. Spendable drops, "Held by runs" rises by the same amount, and the active-run card appears with the run id, its status, what it reserved, its last heartbeat, and the moment the reaper would release it.
Step 4
Close it either way
Let it settle and the hold is charged. Cancel it and the hold comes back whole. Both write a row to the activity table carrying the balance they produced, and the totals still reconcile afterwards. That is the entire product.
Nothing to install, nothing to pay.
If the ledger does what this site says it does, you will see it in two minutes. If it does not, you will see that too, which is the only reason a demo is worth putting in front of a buyer. What it costs.