tsParticles preset for a mouse trail made with small fading particles like little fireflies.
- Install
@tsparticles/engine(or use the CDN bundle below) - Call
loadFireflyPreset(tsParticles)beforetsParticles.load(...) - Set
preset: "firefly"in options
<script src="https://cdn.jsdelivr.net/npm/@tsparticles/preset-firefly@3/tsparticles.preset.firefly.bundle.min.js"></script>Once the scripts are loaded you can set up tsParticles like this:
(async () => {
await loadFireflyPreset(tsParticles);
await tsParticles.load({
id: "tsparticles",
options: {
preset: "firefly",
},
});
})();Important tsParticles installation.
tsParticles.load({
id: "tsparticles",
options: {
particles: {
shape: {
type: "square", // starting from v2, this require the square shape script
},
},
preset: "firefly",
},
});Like in the sample above, the circles will be replaced by squares.
Checkout the documentation in the component library repository and call the loadFireflyPreset function instead of loadFull, loadSlim or similar functions.
The options shown above are valid for all the component libraries.
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/interaction-external-trail |
Adds pointer-driven trail interaction | https://www.npmjs.com/package/@tsparticles/interaction-external-trail |
@tsparticles/plugin-interactivity |
Enables external interaction plumbing | https://www.npmjs.com/package/@tsparticles/plugin-interactivity |
@tsparticles/updater-life |
Controls particle life-cycle stages | https://www.npmjs.com/package/@tsparticles/updater-life |
If you want to customize one specific behavior, start from the related package README above.
- Calling
tsParticles.load(...)beforeloadFireflyPreset(tsParticles) - The effect relies on mouse movement; on touch-only devices it may not appear without additional interaction setup
- The preset uses a transparent background; set
background.colorif you need a solid backdrop
- All presets catalog: https://github.com/tsparticles/presets
- Interactivity options: https://github.com/tsparticles/tsparticles/blob/main/markdown/Options/Interactivity.md
- Main tsParticles docs: https://particles.js.org/docs/
flowchart TD
subgraph b [Bundles]
bb[tsParticles Basic]
end
subgraph i [Interactions]
subgraph ie [Externals]
iet[Trail]
end
end
bb --> i
subgraph pl [Plugins]
pli[Interactivity]
end
bb --> pl
subgraph u [Updaters]
ul[Life]
end
bb --> u
subgraph pr [Presets]
prff[Firefly]
end
bb & iet & pli & ul --> prff



