Splashery

Playground
Grain Garden, a still.

Arcade · Built from a recipe

Grain Garden

F6 on the minor comb. Its drum rings at 1596.0 Hz.

Turn it in the PlaygroundTap the picture to strike it.

Every grain here is one splat, moved by a simple rule sixty times a second.

Shelf
Arcade
Kind
Built from a recipe
Sound
Yes
Licenses
Apache-2.0, MIT, BSD

Its note

Splashery stretches a drumhead over this Splash's outline, twelve inches across, and finds the ways it can ring. Its lowest is 1596.0 Hz, 231 cents sharp of F6, the nearest tine on the comb. The next fifteen are its overtones, and each one draws its own figure: sand gathers on the lines that stay still.

The sixteen ways Grain Garden's drum can ring, lowest first.
  1. 11596 Hz
  2. 21642 Hz
  3. 31932 Hz
  4. 42068 Hz
  5. 52316 Hz
  6. 62427 Hz
  7. 72536 Hz
  8. 82767 Hz
  9. 92783 Hz
  10. 102970 Hz
  11. 112996 Hz
  12. 123143 Hz
  13. 133157 Hz
  14. 143199 Hz
  15. 153373 Hz
  16. 163490 Hz

How to play

Pick sand, water, oil, fire, seeds or stone, then hold and move to pour. Press 3D to tip the box.

Its controls

ControlKindRangeStart
Play or pauseTap
PlayButton
ViewList2 choices2D

About it

Every grain here is one splat, moved by a simple rule sixty times a second. Sand falls and slides off a pile at a slant. Water and oil fall and spread sideways to find their level; oil is lighter, so water sinks under it. Fire flickers upward and dies down to smoke, lighting oil, plants and seeds, and water puts it out. A seed resting by water sprouts a plant that grows up toward the light and sometimes flowers. Stone stays where it is put, for ledges and bowls; Erase clears.

The box has depth. In 2D you see it face on and pour through its whole depth; the 3D button tips it round so the grains show in 3D, still running by the same rules (Q and E turn it).

Sources and credits

Made in Splashery. Its code is MIT.

Libraries

Apache-2.0
Basic Pitch, ONNX (lane Audio piano, October 21, 2026)
MIT
omggif 1.0.10
MIT
ONNX Runtime Web 1.30.0 (its modules)
MIT, Apache-2.0, BSD
PDF.js 6.3.289

Share it

This link opens it in the Playground. To put it on your own page, add the element and one script tag. Every option.

https://splashery.app/play/?toy=grain-garden<script type="module" src="https://splashery.app/play/src/element.js"></script> <splashery-toy toy="grain-garden"></splashery-toy>

Nearby on the strip