Rough is a graphics library designed to render shapes and paths with a hand-drawn, sketchy aesthetic on web pages. It functions as a generator for informal visual styles, allowing developers to create illustrations and diagrams that mimic the appearance of human-drawn sketches.
The library distinguishes itself by using procedural rendering to calculate randomized offsets for lines and curves, simulating natural imperfections. It employs deterministic seeding to ensure that these variations remain consistent across renders, while providing hachure-based texture filling to apply stylized shading patterns within closed boundaries.
The project supports a broad range of visual applications, including the styling of data visualizations, the creation of generative art, and the design of interactive user interface elements. It provides output options for both standard web graphics contexts and resolution-independent vector markup.