Rough Notation is a JavaScript annotation and animation library used to draw sketchy, hand-drawn visual marks over web page elements. It functions as a utility for adding organic-looking underlines, boxes, and highlights to HTML elements to create a hand-drawn aesthetic on digital interfaces.
The library provides specialized tools for sequencing drawing animations and managing instructional overlays. It supports the creation of hand-drawn circles, brackets, and highlights that can be triggered in a specific order to guide users through a page.
The system handles multiline text annotations by drawing individual marks for each line of a text block. It also allows for the modification of visual properties, such as color and style, to provide dynamic emphasis on screen.