A friendly web component for writing and rendering fragment shaders directly in HTML with built-in uniforms for time, mouse, and audio.
Shader-doodle is a web component that allows developers to write and render fragment shaders directly in HTML. It sets up a WebGL canvas, provides built-in uniforms for common inputs like time and mouse position, and supports textures and audio data, making it easy to create interactive visual effects without manual WebGL boilerplate.
Creative coders, web developers, and digital artists who want to incorporate real-time shader effects into websites or interactive projects with minimal setup.
It simplifies shader integration by using familiar HTML syntax, offers built-in support for common interactive inputs, and is lightweight and easy to embed compared to lower-level WebGL libraries.
A friendly web-component for writing and rendering shaders.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Allows writing GLSL fragment shaders directly inside HTML <script> tags, removing the need for manual WebGL context setup as shown in the basic usage examples.
Automatically provides uniforms for time, resolution, mouse, and device orientation, reducing boilerplate code for common shader inputs.
Supports textures from images, videos, webcam, and audio data via <sd-texture> and <sd-audio> sub-components, enabling rich, interactive visual effects.
Optional 'shadertoy' attribute allows using Shadertoy's uniform naming conventions, easing migration for users familiar with that platform.
Only handles fragment shaders, not vertex shaders or full WebGL pipelines, restricting it to 2D effects and basic post-processing.
The current version is alpha, with features like custom uniforms, WebGL2, and some audio attributes (e.g., loop, autoplay) disabled or listed as low-priority future updates.
Relies on WebGL and specific APIs like device orientation, which may lack support or consistency across all browsers and mobile devices, potentially breaking shaders.