open earnest

Read(earnest)

Earnest

A Hebrew family chores and pocket-money app. Parents set chores and pay, kids mark them done and earn.

live · Live site ↗

A kid balance screen in Hebrew: a total of 254 shekels above a list of recent chore earnings and one late-for-dinner deduction.
A kid sees their balance and where every shekel came from, with seed data.
  • - Hebrew interface, right-to-left
  • - Money is stored as integer agorot, with no floats
  • - 40 tests (as of the project README)

Earnest is in production at earnestkid.com, and real families use it. Kids see their day and what each chore pays, and parents approve the work before the money moves.

Keeping the money right

  • Balances are never stored. A balance is the sum of an append-only ledger, so every shekel has a row that explains it.
  • Every manual change needs a reason, and the kid sees it in their history.
  • Removing a kid deactivates them. Nothing that money has touched is deleted.

Built with Next.js 16, Prisma 7 and Postgres.