Fun
Virtual aquarium
Watch a calm, living fish tank — tetras schooling, angelfish gliding, plants swaying in the current — then tap the water to feed them and stock the tank the way you like.
- Neon tetraSmall, shimmering and always in a school10
- ClownfishOrange with bold white bands2
- AngelfishTall, striped and graceful2
- GoldfishRound body and a flowing double tail2
- Blue tangRoyal blue with a yellow tail2
Tap or click the water to drop food · F toggles full screen · Space feeds in full screen · Esc exits
Play and explore in your browser. No account needed.
Frequently asked questions
Are the fish real species?
They are styled after five popular aquarium fish — the neon tetra, clownfish, angelfish, goldfish and blue tang — but every fish is drawn by code from curves and colour gradients, not from photos or artwork, and they share one tank here even though real clownfish and tangs live in salt water and goldfish prefer cool fresh water. The simplified shapes and colours are meant to be recognisable, not scientifically exact.
How do the fish decide where to swim?
Each fish follows a few simple rules, the classic “boids” model of flocking: keep a little distance from any fish nearby, match the direction of its own kind and drift towards their centre. Neon tetras follow these rules strongly, so they school tightly; angelfish and goldfish barely do, so they wander alone. On top of that each fish has a slowly changing heading and preferred depth, steers away from the glass, and heads for the nearest food when it is hungry.
Can I overfeed the fish?
No harm comes to them here. A fish that has just eaten is not hungry for four to eight seconds, so it ignores food for a while, and uneaten pellets rest on the sand and dissolve after 25 to 35 seconds. In a real aquarium, overfeeding does harm: uneaten food rots and pollutes the water, so keepers usually feed only what the fish finish in a couple of minutes.
Is the water sound a recording?
No, it is synthesized live with the Web Audio API. A slowly breathing bed of filtered noise gives the sound of moving water, a faint hiss imitates the surface over the air stone, and gentle bubble pops are pitched with the Minnaert formula for a bubble 1.5 to 5 millimetres across, about 650 to 2,200 Hz. It stays off until you turn it on, and it pauses while the tab is hidden.
Will my fish still be there next time?
No. The tank is not saved: each visit starts fresh with the default 18 fish, and no information about your tank is stored or sent anywhere. Nothing needs feeding while you are away, either.
Can I keep it running on a spare screen or TV?
Yes. Press Full screen to fill the display; the buttons and cursor fade away after a couple of seconds without movement. Keep screen awake asks the browser for a Screen Wake Lock so the display does not sleep, where your browser supports it. On iPhone, which has no true full screen for web pages, the tank fills the visible page instead. The drawing resolution lowers itself if frames run slow, so it stays smooth on phones as well as large displays.
About this tool
This virtual aquarium is a small, calm world drawn live in your browser. Five kinds of fish — neon tetras, clownfish, angelfish, goldfish and blue tangs — swim through a planted tank with a sand floor, pebbles and rocks. Every fish is drawn from curves each frame, with darker backs and paler bellies like real fish, a tail that beats faster when it speeds up, and a body that narrows as the fish turns round. Nearer fish are drawn larger and in front of farther ones.
The fish move with a flocking model: each keeps a little space from its neighbours, lines up with its own kind and drifts towards their centre, so the tetras move as one shimmering school while the angelfish glide alone. Each fish also wanders on a slowly changing heading and preferred depth, turns away from the glass, and swims to the nearest food when it is hungry. Tap the water to drop a pinch of pellets and watch the tank come to life.
Light and movement give the tank depth. Rippling caustics — the bright web that sunlight makes through a moving surface — play across the water and the sand. They come from a pattern built from five cosine waves with whole-number wave vectors, so it tiles without seams, scrolled in two layers at different speeds. Soft shafts of light slant down from the surface, two kinds of plants sway in the current, and bubbles rise and wobble from an air stone.
Everything is generated on the spot — no images, videos or sound files are downloaded — and nothing you do is uploaded or saved. Drawing pauses while the tab is hidden or the tank is scrolled out of view. If your device is set to reduce motion, the fish, plants and light move at half speed, and the optional water sound is synthesized with the Web Audio API.