Skip to content

Sand: A Hyper-Realistic Sand Simulator You Can Play in Your Browser, and How It Works

abe ·

Sand is a free browser toy that turns your phone screen into a tray of real-feeling sand. Here is how to play it, what makes it look so real and how it fits into the long history of falling-sand games.

VENO cover: Sand, a hyper-realistic sand simulator in the browser, with a poured sand spiral and the words tilt and shake

Sand is a free sand simulator that runs in your web browser. It fills your screen with hundreds of thousands of tiny grains that you can push with a finger, slide by tilting your phone and scatter with a shake. It is built with WebGL2 and JavaScript, and it works on phones, tablets and desktop computers with no download.

It is not a game with levels or a score. It is a calm digital toy, a bit like a zen sand tray, and it is surprisingly hard to put down. Below you will find how to play, what each option does, a few tips for nicer patterns and a short look at why it feels so real.

Sand at a glance

What it is Hyper-realistic sand simulator (relaxing toy, no levels)
Where to play av.github.io/safe-sand in any modern browser
Price Free on the web
Devices Phones, tablets and desktops
Phone controls Drag to draw, tilt to slide, shake to scatter
Desktop controls Mouse drag to push, arrow keys or WASD to tilt, hold Space to shake
Built with WebGL2 and JavaScript, simulated on the graphics chip
Source code GitHub

How to play Sand

When the page opens you see a small start card. You pick the sand, pick what lies “under” it and press Pour.

The Sand start card with five sand types, River, Beach, Desert, Volcanic and Coral, three background options and a Pour button

  1. Choose a sand type: River, Beach, Desert, Volcanic or Coral. Each has its own colour mix, from grey river grit to dark volcanic sand and pale coral.
  2. Choose what is under the sand: Light, Lock screen or Screen off. This changes the surface the grains sit on.
  3. Tap Pour. On an iPhone, allow motion access when asked, otherwise tilting will not work.
  4. Play. Drag a finger through the sand to plough a channel, tilt the phone to let it slide, shake it to throw grains around, or flip the phone face down and watch the sand fall off.

Freshly poured river sand forms a soft spiral on a light surface

On a computer you use the mouse instead of a finger, the arrow keys or WASD to tilt the virtual tray, and you hold Space to shake it. The sand reacts the same way, but the phone version is the one the creator designed it for, because the motion sensors make the sand respond to your real hand.

Get true fullscreen on a phone

Browser bars take up space. For the full effect, add the page to your home screen: Share → Add to Home Screen on iOS, or Install app on Android. It then opens like an app, edge to edge.

What makes this sand simulator feel real

Most browser sand games you may know use a grid: each pixel is a “cell” that can be sand, water or empty, and simple rules move it down one step at a time. That style is great for building and mixing, but the sand looks like pixels. Sand takes a different route and tries to copy real sand.

A finger-drawn zigzag channel cut through a layer of grey river sand, with grains piled on its edges

According to the project’s own description on GitHub:

  • Every grain is simulated. Roughly 100,000 to 460,000 individual grains move on the graphics chip (GPU) at once.
  • Real units. The simulation works in millimetres with real gravity (9.81 m/s²), so the speed and the slight lag of the sand match what you expect from the real thing.
  • Each grain is different. Grains get their own size, mineral colour and friction. Loose grains roll and skitter, while a big pile stays put until you tilt past its angle of repose, the steepest slope a pile can hold before it slides.
  • Light and shadow. The app builds a height map of the piles every frame, which gives slopes, self-shadowing and soft shading in the creases. The light direction follows the phone’s tilt, so shadows stretch and quartz grains glint as you move.
  • Sound from the sand itself. The hiss is made from thousands of tiny clicks per second, depending on how much sand is actually moving. Pebbles make lower clicks. When nothing moves, the sound is completely silent.

Dark volcanic sand with a sharp zigzag groove and darker grains along the edges of the cut

One more detail shows how far the realism goes: rotating the phone does not move the picture. The sand stays fixed to the glass, the way real sand in a tray would.

Sand types and backgrounds compared

Sand type Look Good for
River Grey-brown grit with small pebbles Deep, clear channels
Beach Light, warm tan Soft, calm patterns
Desert Orange-red grains Strong colour contrast on a light surface
Volcanic Dark grey to black Sharp lines and bold shadows
Coral Very pale, almost white Subtle, delicate swirls

The “under the sand” option changes the surface the grains lie on: Light, Lock screen or Screen off. Try each one with the same sand type to see which look you like best.

Pale coral sand poured into a loose spiral on a light background

7 tips for nicer sand patterns

  1. Pour, then wait a second. Let the grains settle before you draw, or your lines will fill back in.
  2. Draw slowly for clean edges. A slow finger leaves a crisp channel with neat walls; a fast swipe throws sand to the sides.
  3. Use small tilts. Tilt just past the point where the sand starts to move, then level the phone again. You can steer whole dunes this way.
  4. Shake to reset. A strong shake spreads the sand into a fresh, even layer for the next drawing.
  5. Pick volcanic sand for drawing. Dark sand on a light surface shows lines and shadows best.
  6. Turn the sound on with headphones. The audio is made from the moving grains, so you hear the difference between a slow slide and a sudden avalanche.
  7. Check Low Power Mode if it feels choppy. On iPhones, Low Power Mode caps browsers at 30 frames per second. The app detects this and does not reduce the sand because of it, but switching Low Power Mode off brings back the full frame rate.

River sand pushed to one side of the screen after tilting, leaving a bare strip on the other side

If it runs slowly

The app adjusts quality by itself. If frames run slow for two seconds, it first lowers the screen sharpness in steps, and only then reduces the number of grains. It remembers the level for your next visit. So on an older phone or a laptop without a strong graphics chip, the sand may look a little softer, but it will still move smoothly. The screenshots in this article were taken in a desktop browser with software graphics, which is why some areas look slightly blocky.

A short history of falling-sand games

Sand toys have been popular in browsers for about twenty years:

  • 2005: a Java applet on a Japanese blog made the genre popular. A later expanded version, the “Falling Sand Game”, gave the whole genre its name.
  • 2007: Powder Game added liquid simulation to the formula.
  • 2010: The Powder Toy brought liquids and Newtonian gravity to desktop players.
  • 2019: Sandspiel showed that a sand toy could run fast in the browser using Rust compiled to WebAssembly and WebGL. Its creator explained in his write-up that each element follows very simple rules on a grid; the fun comes from how neighbours interact.
  • 2020: Noita by Nolla Games left early access on 15 October, as an action roguelite in which, in the studio’s words, “every pixel is physically simulated”.

Sand is a different branch of that family. Instead of many elements on a pixel grid, it focuses on one material, real grains measured in millimetres, and the feeling of holding a tray in your hands.

What web game developers can learn from it

  • WebGL2 is enough for heavy simulation. Hundreds of thousands of particles run in a normal browser tab, no native app needed.
  • Use the sensors. Tilt and shake through device motion make a toy feel physical. Remember that iOS asks for permission, so start the sensors from a button tap.
  • Adapt quality, do not guess it. Measure frame time, check whether the browser simply caps the frame rate, then step quality down in small stages and remember the result.
  • Sound should follow the simulation. Audio generated from what is actually moving sounds more natural than a looping sample.
  • Keep it simple to host. The project has no build step: any static file server can host it.

FAQ

Is the Sand simulator free?

Yes. The web version at av.github.io/safe-sand is free to play in your browser, with no download or account.

Does Sand work on a PC?

Yes. Drag with the mouse to push sand, use the arrow keys or WASD to tilt and hold Space to shake. The phone version feels more natural because it uses motion sensors.

Why doesn’t tilting work on my iPhone?

iOS needs your permission to share motion data with a web page. Tap Pour and allow motion access when the prompt appears.

Is Sand a game with levels?

No. It is a relaxing sandbox toy. There is no score, timer or goal; you simply draw, tilt and shake.

What is a falling-sand game?

It is a type of simulation game where many small particles, such as sand, water or fire, follow simple physics rules and interact with each other. Powder Game, The Powder Toy and Noita are well-known examples.

How many grains does Sand simulate?

Its creator says roughly 100,000 to 460,000 grains, depending on your device.

Related articles

Loading game…

VENOGAME / PLAYBOOK

My arena

Saved on this device. No account needed.

Tap a heart to build your own game collection.