Our work · Case study
Raffle draws a fire department can stand behind. We designed, built and run a platform that turns a department's ticket sales into a provably fair draw, with printable results, in under a minute.
Volunteer fire departments fund equipment and training through raffles: gun raffles, 50/50s, gift baskets, even vehicles. A single drawing can have thousands of tickets sold across a season, at events and online.
Assigning numbers to all those buyers was slow, manual spreadsheet work, and when the stakes are a truck or a rifle, “we shuffled it ourselves” invites doubt. Departments needed a draw that was fast, fair, and that anyone (a donor, a board member, a skeptic) could check.
A web app that takes a department from ticket list to results in four steps, and a public page for each department where buyers can look up their numbers.
The randomness doesn't come from us. Every shuffle is seeded by the NIST Randomness Beacon, a public service from the U.S. National Institute of Standards and Technology that publishes a new, cryptographically signed random value every 60 seconds.
Anyone can look up that pulse on NIST's site and confirm it was real. And if the beacon can't be reached, the draw stops with an error. It never quietly falls back to a weaker source, because that would break the guarantee.
Multi-tenant from day one. A department's staff share one token balance and one audit log, and sign in with a magic link instead of a password.
Departments connect Square with OAuth. Creating a raffle sets up the Square catalog item and payment link, enforces ticket limits and imports orders for the draw. Tokens and subscriptions are billed through Square too.
Each department gets a subdomain with its own logo and colors, or points its own domain at it, so buyers check results somewhere they recognize.
Pay per draw with tokens that never expire, or subscribe for the busy season: Department Monthly at $119 for 10 draws, or Unlimited at $199.
We take ideas from first sketch to a live, paying product, then keep it running.