agentsclimarketplace

Vantajs

Skill nota-america/forgecat-agent-profiles/profiles/mengto/skills/mango_skills_agent-skills-web-design/for-forgecat/skills/vantajs

Use when adding animated WebGL background effects with Vanta.js (setup, parameters, resizing, performance, integration in React/Next.js).From its SKILL.md

Install
npx -y skills add nota-america/forgecat-agent-profiles --skill vantajs

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

SKILL.md

2.0 KB, 489 tokens by cl100k_base, as published. Nobody here has run it

Vanta.js — Animated WebGL Backgrounds Skill

When to use

  • Decorative animated backgrounds behind hero sections
  • You want “wow” quickly without building a full three.js scene
  • Lightweight integration into static sites or React/Vue

How it works

  • Vanta injects a canvas into a container element and renders an effect (many use three.js).
  • Typical usage: include three.min.js (or provide THREE) + one Vanta effect bundle.

Key APIs/patterns

  • Init:
    • const effect = VANTA.WAVES({ el: "#hero", ...options })
  • Update after init:
    • effect.setOptions({ color: 0xff88cc })
  • Resize:
    • effect.resize() (if container size changes)
  • Cleanup:
    • effect.destroy() (important in SPAs)

Common pitfalls

  • Container has no size → nothing visible
    • Ensure the target element has explicit width/height (or is laid out).
  • Multiple WebGL canvases on one page → GPU load
    • Keep to 1–2 effects/page.
  • Mobile/older GPU issues
    • Provide a fallback background color/image; consider disabling on small screens.
  • Bundling in frameworks
    • Some builds require window.THREE or passing THREE in options.

Quick recipes

1) Minimal waves background

<div id="hero" style="height: 70vh;"></div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/three.js/r134/three.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/vanta/dist/vanta.waves.min.js"></script>
<script>
  const effect = VANTA.WAVES({ el: "#hero", color: 0x0b1220, shininess: 40, waveHeight: 16, zoom: 0.9 });
</script>

2) React cleanup pattern (concept)

  • Create effect in useEffect, store in ref, call destroy() on unmount.

What to ask the user

  • Which effect (waves, birds, fog, net, etc.) and brand colors?
  • Must it run on mobile? If yes, what’s acceptable FPS/quality?
  • Is it behind text (needs contrast/readability)?

What ships with it: 1 file

124 B alongside SKILL.md

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.