dndie.com

Virtual 3D dice roller

Technologies

  • JavaScript
  • Three.js
  • Cannon-es
  • HTML5
  • CSS
  • npm

dndie.com

DnDie is my ode to tabletop nights. A browser-based dice roller that lets you toss D4 through D20 dice with convincing physics, shiny materials, and an interface that works just as well on a phone as it does on a battle-station monitor. From the first button tap the app feels like a purpose-built tool—no clutter, just your favorite dice lined up in a tidy tray and ready for action. The layout stays fully responsive, keeping controls precise across mobile, tablet, and desktop breakpoints.

What I built

DnDie in action showing a D20 roll

Stack choices

Interaction and immersion details

DnDie settings

Shipping it

The project stays lightweight by skipping heavyweight frameworks in favor of plain JavaScript, then bundling/minifying with an esbuild-based script (plus fast-glob and html-minifier-terser) for production drops. Assets are all static, so deploying to any CDN or static host is as easy as running npm run build and uploading the output.

In short, DnDie is a tactile, customizable dice tray that lives in the browser—perfect for remote campaigns, con tables without enough physical dice, or anyone who just enjoys watching a perfect crit tumble across their screen.