Vow Try it live
Web · PWAlive

Keep the promises you make to yourself.

Put a stake on a promise, name a witness, show proof before the deadline. Miss it and you pay your chosen cause yourself, in full.

Web · PWA
vow · live demolive demo
Vow screenshot
2platforms: Web, PWA
MITopen source licence
Why it exists

A promise with something on the line.

It was built as a free alternative to Forfeit, which charges a subscription and keeps forfeited stakes.

Everything runs in your browser as an installable, offline PWA.

In short

Promises worth a stake.

01

Witnesses hold the key

When your witness accepts the invite, their device creates a private signing key that never leaves it. From then on your photos, notes and timers are claims; a check-in counts only when your witness signs it.

02

Forged check-ins don't count

Confirmations are signed with ECDSA P-256. A forged confirmation, or a signature copied onto another vow, is rejected.

03

The deadline is the deadline

Miss it without proof and the vow breaks on its own. The stake goes into an owed ledger and a confession for your witness is drafted.

How it works

How a vow works

  1. 1

    Write the promise

    Pick a deadline, a stake and the cause that gets it if you miss.

  2. 2

    Name a witness

    Show them the QR code or send the link.

  3. 3

    Check in with proof

    Before the deadline, add a photo, note or timer; your witness signs it.

  4. 4

    Miss it, and it counts

    The vow breaks on its own and Vow records what you owe your cause.

What's inside

What keeps a vow honest.

Witnesses hold the key

When your witness accepts the invite, their device creates a private signing key that never leaves it. From then on your photos, notes and timers are claims; a check-in counts only when your witness signs it.

Forged check-ins don't count

Confirmations are signed with ECDSA P-256. A forged confirmation, or a signature copied onto another vow, is rejected.

The deadline is the deadline

Miss it without proof and the vow breaks on its own. The stake goes into an owed ledger and a confession for your witness is drafted.

Easing off takes a day

Raising a stake is instant. Lowering, delaying or deleting waits 24 hours. If the next deadline is more than a day away, deleting means walking away: you owe the stake or your witness signs you off.

Payments your witness confirms

Log the transaction reference and a receipt photo. Your witness signs the payment on their phone; forged or copied confirmations are rejected.

Proof your way

A photo taken live with the camera inside Vow (no gallery uploads), a written note, a focus timer that restarts if you leave, or your witness's word.

Debts don't disappear

Debts older than 7 days block new vows until you log a receipt. Erasing your data keeps unpaid debts.

Streaks and history

Per-vow history dots, a 12-week heatmap, a monthly summary and calendar (.ics) reminders, in light or dark.

Working today

What Vow will never do.

Run it yourself

Run it yourself.

From the README’s “Run it yourself” section. Full options, requirements and troubleshooting are there too.

Open the README
bash
$ git clone https://github.com/juw12/vow
$ cd vow
$ python -m http.server 8080
# open http://localhost:8080
Your data

Private by design

  • Vow has no server and no account.
  • Export a backup now and then; it includes the signing keys for vows you witness.
Good to know

Honest limits.

Straight from the README, so you know what you're getting before you try it.

  • Vow cannot charge you. You pay your cause yourself; your witness is what makes it real.
  • Until your witness accepts the invite, proof is on your honor.
  • Data lives in one browser.
Under the hood

How it's built.

Built with

Language
PythonHTML/CSSJavaScript
Platform
PWAOffline service worker

15 files in the repo.

Browse the code
Questions

Good questions.

What does it run on?

Web, PWA. You can try it in the browser with nothing to install.

How do I get it running?

The commands in the “Run it yourself” box above come straight from the README. Paste them into a terminal; the README covers options and troubleshooting.

Where does my data go?

Vow has no server and no account. Export a backup now and then; it includes the signing keys for vows you witness.

What doesn't it do yet?

Vow cannot charge you. You pay your cause yourself; your witness is what makes it real. Until your witness accepts the invite, proof is on your honor.

Is it finished?

Not yet: it's marked “live” and still changing. The README always has the current state.

Is it free?

The source is public on GitHub under the MIT licence.

Who made it?

Juwen Lie, an R&D mechanical engineer in Batam, Indonesia, as an independent personal project.

Keep exploring

More from the same workbench.

Make your first vow.

Keep the promises you make to yourself.