
Research
/Security News
Critical Vulnerability in NestJS Devtools: Localhost RCE via Sandbox Escape
A flawed sandbox in @nestjs/devtools-integration lets attackers run code on your machine via CSRF, leading to full Remote Code Execution (RCE).
webgl-generative-particles
Advanced tools
This library is a Work In Progress. Feel free to request features, report bugs, or contribute. We aim to keep the APIs stable, though some changes may occur.
"webgl-generative-particles" is an efficient WebGL-based generative particle system simulator designed for both React and vanilla JS applications. This system follows the mouse pointer, providing interactive and dynamic visual effects. It offers seamless integration with React (including React 18 and beyond) and Next.js, making it an ideal choice for modern frontend development. The simulator is customizable, compatible with various frameworks, and delivers high performance and real-time rendering for progressive web development.
Check out the live demo at - https://webgl-generative-particles.vercel.app/
✅ Fully Treeshakable (import from webgl-generative-particles/react
)
✅ Fully TypeScript Supported
✅ Leverages the power of React 18 Server components
✅ Compatible with all React 18 build systems/tools/frameworks
✅ Documented with Typedoc (Docs)
✅ Examples for Next.js, Vite, and Remix
Please consider starring this repository and sharing it with your friends.
Using pnpm:
$ pnpm add webgl-generative-particles
Using npm:
$ npm install webgl-generative-particles
Using yarn:
$ yarn add webgl-generative-particles
import { Particles } from "webgl-generative-particles/react";
<Particles
fullScreenOverlay
options={{
rgba: [0, 1, 0, 0.5],
}}
/>
export interface ParticlesOptions {
/** Particle Color @defaultValue [1, 0, 0, 1] -> red */
rgba?: [number, number, number, number];
/** Maximum number of particles @defaultValue 100_000 */
maxParticles?: number;
/** Particle generation rate @defaultValue 0.5 */
generationRate?: number;
/** Overlay mode @defaultValue false */
overlay?: boolean;
/** Disable mouse interaction @defaultValue false */
mouseOff?: boolean;
/** Min and max angles in radians @defaultValue [-Math.PI, Math.PI] */
angleRange?: [number, number];
/** Min and max age of particles in seconds */
ageRange?: [number, number];
/** Speed range [minSpeed, maxSpeed] */
speedRange?: [number, number];
/** Initial origin, will update as per mouse position if mouseOff is not set @defaultValue [0, 0] */
origin?: [number, number];
/** Constant force [fx, fy] or a force field texture (Work In Progress) */
forceField?: Vector2D; //| Vector[][] | string;
}
The concepts in this library were learned from the following blogs and tutorials:
This library is licensed under the MPL-2.0 open-source license.
Please consider enrolling in our courses or sponsoring our work.
with 💖 by Mayank Kumar Chaudhari
FAQs
An efficient WebGL-based generative particle system.
The npm package webgl-generative-particles receives a total of 1,345 weekly downloads. As such, webgl-generative-particles popularity was classified as popular.
We found that webgl-generative-particles demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
/Security News
A flawed sandbox in @nestjs/devtools-integration lets attackers run code on your machine via CSRF, leading to full Remote Code Execution (RCE).
Product
Customize license detection with Socket’s new license overlays: gain control, reduce noise, and handle edge cases with precision.
Product
Socket now supports Rust and Cargo, offering package search for all users and experimental SBOM generation for enterprise projects.