A web development environment for creative coding with canvas, p5.js, three.js, and WebGL shaders.
Fragment is a web development environment tailored for creative coding and generative art. It provides a simple API to work with HTML5 Canvas and supports multiple rendering libraries like p5.js, three.js, and WebGL shaders. The tool solves the problem of fragmented workflows by integrating sketching, live preview, GUI controls, and export functionalities into a single environment.
Creative coders, generative artists, and developers building visual sketches or interactive canvas-based projects. It's ideal for those who want a streamlined workflow without managing separate tools for coding, previewing, and exporting.
Developers choose Fragment for its integrated approach—combining multiple rendering engines, live GUI controls, and export features in one tool. Its hot reloading for shaders and support for popular libraries like p5.js and three.js make it uniquely suited for rapid visual experimentation.
[alpha] A web development environment for creative coding
Supports Canvas 2D, p5.js, three.js, and WebGL shaders, providing flexibility for different visual styles, as listed in the features.
Creates control panels directly from sketch variables, enabling real-time parameter adjustment without manual UI coding, as shown in the example with props.
Allows exporting canvas content to various image and video formats like PNG, MP4, and GIF, simplifying sharing and deployment, per the export capabilities.
Offers live reloading for GLSL shaders with glslify support, speeding up iterative development for fragment shaders, as highlighted in the features.
Provides full TypeScript support for type-safe sketches, reducing errors in complex projects, mentioned in the TypeScript support feature.
As a niche tool, it has fewer plugins or community extensions compared to mainstream frameworks, which might restrict advanced customizations or integrations.
The auto-generated GUI is convenient but may not support advanced styling or complex control layouts, as it's designed for simplicity over flexibility.
Relies on p5.js, three.js, and other libraries, so updates or changes in these could break compatibility or require manual adjustments in sketches.
Focused on client-side rendering, it lacks features for server-side operations or database interactions, limiting use in full-stack applications.
[beta] A framework for making generative artwork in JavaScript and the browser.
LYGIA, it's a granular and multi-language (GLSL, HLSL, Metal, WGSL, WEGL and CUDA) shader library designed for performance and flexibility
Live Graphics in Swift & Metal
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.