Big Free Casino

A free play-money casino with 30 games on real rules, from slots and blackjack to roulette and video poker.

Big Free Casino, play-money casino site built by Miles Media
Built for
Casino game fans, play money only
Type
Play-money casino site
Status
Live
Built
Oct 2026

Casino games are all about the math, and a game that pays out wrongly is worse than no game at all. A play-money casino had to follow each game's real rules and payouts, share one balance and still work on a phone.

We built 30 casino games on one shared wallet and design, and built and tested every game's rules before any of its screens.

  • 30 games in one lobby

    Slots, a rocket crash game, blackjack, roulette, craps, baccarat, table poker and video poker, with search and categories.

  • Payouts you can trust

    Every table game's payouts were checked against published figures before launch.

  • Tables that look real

    3D roulette wheels, dice and chips make each table feel like the real thing.

  • One play-money wallet

    Free chips, refills, a daily bonus and an account page with history, plus play that keeps working offline.

Live since mid-October 2026 and at bigfreecasino.com, under the Big Free Casino name, since October 27. Slots, a poker room and offline play were added in the first week.

Could a custom game like this help your business?

Does your business software handle money? We check the math before we build the screens, so quotes, invoices and commissions come out right every time.

See how branded game development works, from the first call to launch.

For the technical reader

Technical Stuff

How Big Free Casino is built, what it runs on, and the hard problems we solved along the way.

How it's built

The site is a Vite multi-page build, with one generated HTML page per game created from a single catalog file. Shared modules handle the wallet, stats, settings, sound and analytics, and a table kit built on three.js supplies felt, chips, cards, labels and the bottom button dock, so a new game is a pure rules engine plus a thin interface. Engines are plain JavaScript with node:test files, which is why they can be checked against published figures without a browser. The site is hosted on Cloudflare Pages. Pages Functions and a D1 database collect first-party analytics and keep the shared Caribbean Stud meter, and a service worker built at deploy time makes offline play possible. The balance itself lives in the player's browser.

Built with

  • Vite
  • three.js
  • JavaScript
  • Canvas 2D
  • Cloudflare Pages
  • Cloudflare Pages Functions
  • Cloudflare D1
  • Service worker
  • node:test
  • GA4

The hard parts

  1. Two tabs, one wallet

    Two tabs changing the balance at nearly the same moment could each overwrite the other, because a write from one tab takes a moment to reach the other. We gave every wallet change an id and kept a short list of applied ids. When another tab's write arrives missing one of this tab's recent changes, the change is applied again on top of it, so both tabs end up with every stake and every return.

  2. Analytics inside a free database limit

    The collector had to track every click and round without burning through the daily write limit of a D1 database shared with other client sites. The browser sends events in batches, every 30 seconds, at 40 events, or when the tab hides. The server checks and caps each batch, writes it in a handful of statements by unpacking JSON, and keeps a running estimate of the day's writes. As the day fills, it stops saving raw events first, then sessions.

  3. Offline play without stale pages

    The service worker serves pages network first and falls back to the saved copy after four seconds, so players online always get the latest build. Each file carries a content hash, and a deploy re-downloads only the files that changed. A kill switch in the site config makes the next deploy delete every saved file and unregister the worker. Testing was its own trap: Playwright's offline switch breaks service workers in WebKit, so we tested there by shutting the server down instead.

  4. Slot math and motion both measured

    Gold Vault's exact return is 95.962%, and a 100 million spin simulation measured 95.963%. Reel motion is written as tested functions of time: a wind-up, 17.5 cells per second, a hard stop with a 0.22-cell overshoot and a 0.15 second spring back. The timings were measured from free slot demos, then confirmed in Chromium, and the game held 60 frames per second on a phone profile slowed four times.

Start a project

Where could AI save your business time?

Tell us what is slowing your business down. If AI or custom software is the right fix, you get a fixed price before any work starts.