Popular right now

Fun

Fireworks simulator

Tap or click the night sky to launch a shell there, or sit back and let the auto show run — peonies, golden willows, tilted rings and crackling crossettes over a city skyline.

Ready to useFree · No sign-up

Photosensitivity note: this simulator shows bright bursts and twinkling light. Sky glows are limited to two per second, and turning on reduced motion in your device settings removes the glows and twinkle. Stop if you feel unwell.

Tap or click the sky to launch
Shell type

Space launches a random shell · F toggles full screen · Esc exits

Play and explore in your browser. No account needed.

Advertisement

Frequently asked questions

What are the different shell types?

They copy the shapes of real aerial shells. A peony bursts into a round ball of coloured stars. A willow throws out long-burning gold stars that hang, droop and leave glittering trails. A ring spreads its stars in a flat circle, tilted at a random angle so it can look like a circle or an oval, with a small burst of a second colour in the middle. A crossette fires a few bright stars that each split into four pieces in a cross, with a crackle, a little under a second later.

How realistic is the physics?

Every star is launched with a speed and direction, then slowed by air drag and pulled down by gravity each frame, so bursts expand fast, slow down and fall in curves like real ones. Directions for round bursts are picked on a sphere and seen from the side, which is why a peony looks filled in rather than like a ring. Rockets are given exactly the upward speed needed to stop at the point you tapped, where the shell bursts. Sizes and speeds scale with your screen, so a phone and a TV show the same shapes.

Why is the boom late when I turn on sound delay?

At a real display, light reaches you almost instantly but sound travels at about 343 metres per second. The simulator assumes you are standing 400 metres from the launch site with the top of the screen about 300 metres up, so each boom arrives roughly 1.2 to 1.5 seconds after its flash, a little later for higher bursts. With the option off, sounds play at the moment of the burst.

Is it safe for people with photosensitive epilepsy?

The simulator is designed to avoid rapid flashing: the soft sky glow that big bursts add is limited to two per second, below the three-flashes-per-second threshold in the WCAG accessibility guidelines, and there is no full-screen strobe. It still shows bright, twinkling light, so anyone sensitive should take care. If your device is set to reduce motion, the glows and twinkling are switched off and the auto show starts off.

Why doesn’t it go fully full screen on my iPhone?

Safari on iPhone does not allow true full screen for web pages, so the show covers the whole visible page instead and the browser bars may stay. Turning the phone sideways, or adding the page to your Home Screen, gives more room. iPad, Android and desktop browsers go truly full screen.

Where do the sounds come from?

They are synthesized live in your browser with the Web Audio API — no recordings are downloaded. The launch is a rising whoosh of filtered noise, the boom is a burst of noise through a closing low-pass filter with a low sine thump underneath, and the crackle is dozens of tiny high-pitched clicks scattered over about a second. Each sound is panned left or right to match where it happens on screen, and a limiter keeps a busy finale from clipping.

Advertisement

About this tool

This fireworks simulator puts a night-time display in your browser. Every rocket rises from behind a city skyline, trailing gold sparks, and bursts where you tapped. Four classic shell types are modelled: round peonies, drooping golden willows, flat rings seen at a tilt, and crossettes whose stars split into crosses with a crackle. Mix picks among them at random, and five colour schemes — Multicolour, Gold & silver, Red, white & blue, Pastel and Neon — set the colours of the stars.

The motion comes from a small physics simulation. Each star has its own speed, air drag, gravity and burn time; willow stars burn for up to four and a half seconds with heavy drag, so they hang and fall slowly, while peony stars are quick and bright. Glowing trails are made by fading the previous frames instead of clearing them, and stars are drawn as additive glowing points and streaks, so overlapping bursts brighten each other the way light does.

Sound is optional and made on the spot with the Web Audio API: a whoosh for each launch, a deep boom for each burst and a scatter of crackles when crossettes split. Realistic sound delay holds each boom back by the time sound would take to travel from a display about 400 metres away. The auto show fires shells at a random rhythm set by the pace slider, from calm to grand, and Finale sends up eighteen shells in about four seconds, or eight when reduced motion is on.

The show is tuned to run smoothly on phones. Particles live in fixed-size typed arrays, the drawing resolution follows your screen’s pixel density, and if frames take too long the page lowers the resolution and the number of stars allowed at once. Animation pauses when the tab is hidden or the stage is scrolled out of view. Keep screen awake in full screen uses the Screen Wake Lock API where supported, and nothing leaves your device.

Related tools