A vector graphics scripting framework for HTML5 Canvas and Node.js, offering a comprehensive API for creating and manipulating vector graphics.
Paper.js is a vector graphics scripting framework that enables developers to create and manipulate vector graphics programmatically in the browser and Node.js. It provides a unified API for drawing, animating, and interacting with vector shapes, making it ideal for creative coding, data visualization, and interactive art projects.
Creative developers, data visualization engineers, and interactive designers who need programmatic control over vector graphics in web or Node.js environments.
Developers choose Paper.js for its comprehensive vector graphics API, seamless cross-platform support (browser and Node.js), and its roots in the proven Scriptographer tool, offering a mature and intuitive approach to graphics scripting.
The Swiss Army Knife of Vector Graphics Scripting – Scriptographer ported to JavaScript and the browser, using HTML5 Canvas. Created by @lehni & @puckey
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides a full set of classes for creating and manipulating vector paths, shapes, and curves, enabling detailed graphics programming as outlined in the Key Features.
Seamlessly integrates with HTML5 Canvas in browsers and runs headlessly on Node.js with SVG import/export, offering flexibility for both client and server-side use.
Includes PaperScript for simplified graphics coding with automatic scope handling and operator overloading, reducing boilerplate for creative projects.
Offers paper-full.js and paper-core.js versions to optimize file size and compilation time, catering to different project needs as described in the README.
Requires installing native dependencies like Cairo and Pango for Canvas rendering on Node.js, which the README notes can be error-prone, especially on macOS.
Introduces a non-standard syntax that may confuse developers and create maintenance hurdles if not all team members are familiar with it.
Lacks built-in support for modern UI frameworks, requiring additional effort to integrate with tools like React or Vue compared to specialized libraries.
Paper.js is an open-source alternative to the following products:
The scripting capabilities within Adobe Illustrator that allow users to automate tasks and extend functionality using JavaScript, AppleScript, or VBScript.
Scriptographer was a scripting plugin for Adobe Illustrator that allowed users to extend Illustrator's functionality through JavaScript, though it is no longer actively maintained.