glfx.js is a JavaScript image-effects library that uses WebGL to apply real-time filters and transformations directly in the browser. It exposes a simple API where images are uploaded into GPU textures, processed with shader-based filters, and rendered to a WebGL canvas. Because the work is done on the GPU, many effects that would be too slow in pure JavaScript (like complex blurs, lens effects, or tilt-shift) can run interactively, even on large images. The library is structured around three components: textures (image sources), filters (shader pipelines), and canvases (render targets), making it easy to compose multiple effects. A demo page showcases a variety of filters, from basic brightness/contrast adjustments to more advanced distortions and color manipulations. glfx.js remains a handy reference and solution for anyone needing client-side photo editing, visual effects, or generative graphics powered by WebGL.
Features
- GPU-accelerated image processing via WebGL for real-time effects
- Texture–filter–canvas abstraction for composing complex effect chains
- Wide range of built-in filters such as blur, vignette, tilt-shift, and color adjustments
- Works directly in the browser with <img> and <canvas> elements
- Suitable for photo editors, visual demos, and creative coding projects
- Minimal pure-JS API that can be wrapped in frameworks like React or Vue