tsParticles Fountain Preset
April 9, 2026 · View on GitHub
tsParticles Fountain Preset
tsParticles preset creating random positioned falling colored particles that break when hitting the ground.
Sample
Quick checklist
- Install
@tsparticles/engine(or use the CDN bundle below) - Call
loadFountainPreset(tsParticles)beforetsParticles.load(...) - Set
preset: "fountain"in options
How to use it
CDN / Vanilla JS / jQuery
<script src="https://cdn.jsdelivr.net/npm/@tsparticles/preset-fountain@3/tsparticles.preset.fountain.bundle.min.js"></script>
Usage
Once the scripts are loaded you can set up tsParticles like this:
(async () => {
await loadFountainPreset(tsParticles);
await tsParticles.load({
id: "tsparticles",
options: {
preset: "fountain",
},
});
})();
Customization
Important ⚠️
You can override all the options defining the properties like in any standard tsParticles installation.
tsParticles.load({
id: "tsparticles",
options: {
particles: {
shape: {
type: "square", // starting from v2, this require the square shape script
},
},
preset: "fountain",
},
});
Like in the sample above, the circles will be replaced by squares.
Frameworks with a tsParticles component library
Checkout the documentation in the component library repository and call the loadFountainPreset function instead of loadFull, loadSlim or similar functions.
The options shown above are valid for all the component libraries.
Dependencies
This preset loads and combines the following packages:
| Package | Role in this preset | README |
|---|---|---|
@tsparticles/basic | Base runtime bundle used by the preset | https://www.npmjs.com/package/@tsparticles/basic |
@tsparticles/engine | tsParticles engine and preset registration | https://www.npmjs.com/package/@tsparticles/engine |
@tsparticles/plugin-emitters | Spawns particles from configurable emitters | https://www.npmjs.com/package/@tsparticles/plugin-emitters |
@tsparticles/plugin-trail | Adds persistent canvas trail rendering | https://www.npmjs.com/package/@tsparticles/plugin-trail |
@tsparticles/updater-destroy | Removes particles when their stage ends | https://www.npmjs.com/package/@tsparticles/updater-destroy |
If you want to customize one specific behavior, start from the related package README above.
Common pitfalls
- Calling
tsParticles.load(...)beforeloadFountainPreset(tsParticles) - Changing particle shape without loading the corresponding shape package
- The fountain effect uses emitters; overriding
emitterswill replace the default fountain behavior
Related docs
- All presets catalog: https://github.com/tsparticles/presets
- Emitter options: https://particles.js.org/docs/classes/Plugins_Emitters_Options_Classes_Emitter.Emitter.html
- Main tsParticles docs: https://particles.js.org/docs/
flowchart TD subgraph b [Bundles] bb[tsParticles Basic] end subgraph pl [Plugins] ple[Emitters] pli[Interactivity] plt[Trail] end bb --> pl subgraph u [Updaters] ud[Destroy] end bb --> u subgraph pr [Presets] prfo[Fountain] end bb & ple & pli & plt & ud --> prfo



