tsParticles - v4.1.1
    Preparing search index...

    Module tsParticles Light Interaction - v4.1.1

    banner

    tsParticles Light Interaction

    jsDelivr npmjs npmjs GitHub Sponsors

    tsParticles interaction plugin for light effect.

    1. Install @tsparticles/engine (or use the CDN bundle below)
    2. Call loadInteractivityPlugin(tsParticles) and loadLightInteraction(tsParticles) before tsParticles.load(...)
    3. Enable "light" in interactivity events and configure interactivity.modes.light

    The CDN/Vanilla version JS has one required file in vanilla configuration:

    Including the tsparticles.interaction.light.min.js file will export the function to load the interaction plugin:

    loadLightInteraction
    

    Once the scripts are loaded you can set up tsParticles and the interaction plugin like this:

    (async () => {
    await loadInteractivityPlugin(tsParticles);
    await loadLightInteraction(tsParticles);

    await tsParticles.load({
    id: "tsparticles",
    options: {
    /* options */
    },
    });
    })();

    This package is compatible also with ES or CommonJS modules, firstly this needs to be installed, like this:

    $ npm install @tsparticles/interaction-light
    

    or

    $ yarn add @tsparticles/interaction-light
    

    Then you need to import it in the app, like this:

    const { tsParticles } = require("@tsparticles/engine");
    const { loadInteractivityPlugin } = require("@tsparticles/plugin-interactivity");
    const { loadLightInteraction } = require("@tsparticles/interaction-light");

    (async () => {
    await loadInteractivityPlugin(tsParticles);
    await loadLightInteraction(tsParticles);
    })();

    or

    import { tsParticles } from "@tsparticles/engine";
    import { loadInteractivityPlugin } from "@tsparticles/plugin-interactivity";
    import { loadLightInteraction } from "@tsparticles/interaction-light";

    (async () => {
    await loadInteractivityPlugin(tsParticles);
    await loadLightInteraction(tsParticles);
    })();
    • Event mode key: interactivity.events.onHover.mode or interactivity.events.onClick.mode with value "light"
    • Mode options key: interactivity.modes.light
    Key Type Default Notes
    area.radius number 1000 Light interaction radius
    area.gradient.start color Gradient start color
    area.gradient.stop color Gradient stop color
    shadow.color color "#000000" Shadow/tint color
    shadow.length number 2000 Shadow projection length
    {
    "interactivity": {
    "events": {
    "onHover": {
    "enable": true,
    "mode": "light"
    }
    },
    "modes": {
    "light": {
    "area": {
    "radius": 700,
    "gradient": {
    "start": "#ffffff",
    "stop": "#000000"
    }
    },
    "shadow": {
    "color": "#000000",
    "length": 1400
    }
    }
    }
    }
    }
    • Calling tsParticles.load(...) before both loadInteractivityPlugin(...) and loadLightInteraction(...)
    • Verify required peer packages before enabling advanced options
    • Change one option group at a time to isolate regressions quickly

    Modules

    browser
    ExternalLighter
    index
    index.lazy
    Options/Classes/Light
    Options/Classes/LightArea
    Options/Classes/LightGradient
    Options/Classes/LightOptions
    Options/Classes/LightShadow
    Options/Interfaces/ILight
    Options/Interfaces/ILightArea
    Options/Interfaces/ILightGradient
    Options/Interfaces/ILightShadow
    ParticlesLighter
    Types
    Utils