awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
Back to paperjs/paper.js

Projects sharing features with Paper.js

30 open-source projects similar to paperjs/paper.js, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.

  • konvajs/konvakonvajs avatar

    konvajs/konva

    14,135View on GitHub↗

    Konva is an object-oriented HTML5 canvas framework designed for building interactive 2D graphical applications. It provides a hierarchical scene graph that organizes shapes, images, and text into manageable nodes, groups, and layers. By mapping application state to canvas elements, the library enables developers to create complex visual interfaces using declarative patterns that synchronize with modern component-based frameworks. The library distinguishes itself through a robust event system that supports hit detection, bubbling, and direct manipulation of graphical objects, such as dragging,

    TypeScriptanimationcanvasdrag-and-drop
    View on GitHub↗14,135
  • kangax/fabric.jskangax avatar

    kangax/fabric.js

    31,236View on GitHub↗

    Fabric.js is an HTML5 canvas library and interactive vector graphics engine. It provides an object-oriented model for creating, manipulating, and animating 2D shapes and interactive graphics on a web page. The project functions as an SVG to canvas parser, translating SVG data into interactive canvas objects and exporting canvas states back into SVG format. It also serves as a canvas image processing tool for applying filters, gradients, patterns, and brush strokes to visual elements. The library covers programmatic vector manipulation, including the ability to scale, rotate, skew, and group

    TypeScript
    View on GitHub↗31,236
  • jonobr1/two.jsjonobr1 avatar

    jonobr1/two.js

    8,636View on GitHub↗

    Two.js is a multi-backend graphics engine and vector drawing library that provides a unified API for creating two-dimensional graphics and animations. It functions as a renderer-agnostic abstraction layer, allowing users to generate vector shapes and paths that can be rendered via SVG, Canvas2D, or WebGL. The engine includes a scene graph manager to organize objects into hierarchical groups, enabling the propagation of collective transformations and parent-child relationships. It also features a headless graphics renderer, providing a node-based implementation for generating 2D drawings in se

    JavaScript
    View on GitHub↗8,636

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Find more with AI search
  • sixlabors/imagesharpSixLabors avatar

    SixLabors/ImageSharp

    7,954View on GitHub↗

    ImageSharp is a .NET image processing library and manipulation framework used for decoding, encoding, and modifying digital images. It functions as a comprehensive toolkit for resizing, cropping, and applying pixel-level filters while managing color profiles and pixel data across various file formats. The project integrates a 2D vector graphics engine and a typography rendering engine to draw geometric shapes, paths, and complex stylized text onto images. It also includes a geometry boolean operation library for calculating intersections, unions, and differences between complex polygons and c

    C#bmpc-sharpdrawing
    View on GitHub↗7,954
  • qrohlf/trianglifyqrohlf avatar

    qrohlf/trianglify

    10,093View on GitHub↗

    Trianglify is an algorithmic background generator and vector art toolkit used to produce pseudo-random geometric patterns and polygonal meshes. It functions as a rendering engine that converts geometric data into either scalable vector graphics or rasterized canvas elements. The system utilizes deterministic pattern generation via seed values to ensure consistent geometric output. It supports customizable color gradients, coordinate grid jittering, and custom geometry definitions to control the placement and shape of the generated meshes. The project covers algorithmic art generation and gen

    JavaScript
    View on GitHub↗10,093
  • wout/svg.jswout avatar

    wout/svg.js

    11,796View on GitHub↗

    svg.js is a JavaScript library and vector graphics API that provides a programmatic interface for creating and modifying scalable vector graphics in the browser. It functions as a lightweight wrapper for the browser DOM to simplify the management of SVG elements and attributes. The project serves as both a manipulation library and an animation framework, enabling the development of dynamic user interfaces and web vector animations. It covers the creation of motion and visual transitions for vector graphics to produce fluid animations. The library's capabilities extend to vector graphic visua

    JavaScript
    View on GitHub↗11,796
  • metafizzy/zdogmetafizzy avatar

    metafizzy/zdog

    10,603View on GitHub↗

    Zdog is a JavaScript graphics library designed for rendering pseudo-three-dimensional geometric models within web browser environments. It functions as a lightweight engine that draws flat, vector-based shapes onto HTML5 canvas or SVG elements by utilizing a scene graph to manage object relationships and spatial transformations. The library distinguishes itself through a unique approach to volumetric modeling, where three-dimensional depth is simulated on flat shapes by dynamically adjusting stroke thickness. This technique allows for the creation of rounded, plump visual effects without the

    JavaScript3dcanvassvg
    View on GitHub↗10,603
  • adobe-webplatform/snap.svgadobe-webplatform avatar

    adobe-webplatform/Snap.svg

    14,012View on GitHub↗

    Snap.svg is a JavaScript library for creating, manipulating, and animating scalable vector graphics directly in the web browser. It functions as a browser-based SVG generator and vector graphics manipulation tool, providing a framework to programmatically generate complex drawings and masks. The project serves as an animation engine for transitioning visual properties and attributes over time to create motion. It enables the development of dynamic SVG content, including the ability to animate viewboxes, matrices, and polygon points. Its capability surface covers geometric calculations and th

    JavaScriptjavascriptjavascript-librarysnap
    View on GitHub↗14,012
  • makieorg/makie.jlMakieOrg avatar

    MakieOrg/Makie.jl

    2,778View on GitHub↗

    Makie.jl is a high-performance Julia data visualization library and hardware-accelerated plotting engine used to create interactive 2D and 3D visualizations. It functions as a reactive visualization framework where plots update automatically via observables and compute graphs, and as a vector graphics generator for high-resolution academic output. The system is distinguished by its backend-agnostic rendering pipeline, which supports OpenGL, WebGL, and ray-traced scenes. It employs a grammar-of-graphics approach to map variables to aesthetic attributes and utilizes a hierarchical scene graph t

    Juliagpugraphicsjulia
    View on GitHub↗2,778
  • mrdoob/three.jsmrdoob avatar

    mrdoob/three.js

    113,086View on GitHub↗

    This project is a high-level 3D graphics engine designed to render complex, hardware-accelerated environments within web browsers. It provides a comprehensive abstraction layer that manages scene graphs, cameras, and lighting, mapping high-level scene definitions onto low-level graphics APIs. By decoupling these definitions from specific hardware targets, the engine ensures consistent performance across diverse browsers and devices. The framework distinguishes itself through a robust architecture that includes a unified math library for high-frequency spatial calculations and a physically bas

    JavaScript3daugmented-realitycanvas
    View on GitHub↗113,086
  • babylonjs/babylon.jsBabylonJS avatar

    BabylonJS/Babylon.js

    25,652View on GitHub↗

    Babylon.js is a JavaScript game engine and real-time graphics renderer designed for creating interactive three-dimensional visuals and applications. It functions as a web-based 3D framework and WebGL engine that enables the deployment of high-performance 3D content across various web platforms and devices. The project provides tools for web-based 3D game development, real-time graphics rendering, and the creation of browser-based interactive visualizations. It also supports the development of WebXR virtual and augmented reality experiences using standard web technologies. The framework cover

    TypeScript
    View on GitHub↗25,652
  • fabricjs/fabric.jsfabricjs avatar

    fabricjs/fabric.js

    31,233View on GitHub↗

    Fabric.js is an object-oriented canvas library that provides an interactive framework for managing shapes, images, and text within an HTML5 canvas environment. It abstracts raw pixel-based drawing commands into a structured hierarchy of objects, enabling developers to manipulate, transform, and animate elements through a centralized event-driven system. The library distinguishes itself by offering comprehensive state serialization, allowing complex graphic compositions to be converted into JSON or SVG formats for persistent storage and reconstruction. It includes a built-in SVG parser that co

    TypeScript
    View on GitHub↗31,233
  • leaferjs/leafer-uileaferjs avatar

    leaferjs/leafer-ui

    4,184View on GitHub↗

    Leafer UI is a high-performance HTML5 canvas rendering engine and 2D vector graphics library. It utilizes a hierarchical scene tree to manage shapes, paths, and text, providing a toolkit for building interactive canvas applications and expansive infinite canvases. The engine is designed as a cross-platform canvas toolkit that decouples core logic from the drawing API, allowing it to run across web, mobile, server, and mini-program environments. It distinguishes itself by providing specialized tools for interactive graphic editor development, including hit detection, event bubbling, and transf

    TypeScriptcanvasinfinite-canvasleafer
    View on GitHub↗4,184
  • catdad/canvas-confetticatdad avatar

    catdad/canvas-confetti

    12,602View on GitHub↗

    canvas-confetti is an HTML5 canvas animation library and browser particle effect engine designed to render celebratory confetti bursts. It functions as a visual effects tool that transforms SVG paths, emojis, and text into animated particles. The library offloads heavy particle calculations to a web worker to maintain main thread responsiveness and prevent the user interface from lagging. It includes built-in support for operating system reduced motion settings, automatically disabling animations for users with motion sensitivities to ensure accessibility compliance. The system supports conf

    JavaScriptanimationburstcanvas
    View on GitHub↗12,602
  • exyte/macawexyte avatar

    exyte/Macaw

    6,050View on GitHub↗

    Macaw is a Swift vector graphics library and animation framework used to create and render scalable geometric shapes and text. It functions as an SVG rendering engine and an interactive vector graphics toolkit for displaying complex artwork while maintaining image quality at any scale. The framework enables the animation of shape properties and node transformations, including the ability to morph one vector path into another. It allows for the integration of external SVG files and the application of linear and radial gradients to fills and strokes. The toolkit covers a range of capabilities

    Swiftanimationdrawinggraphics
    View on GitHub↗6,050
  • pixijs/pixi.jspixijs avatar

    pixijs/pixi.js

    47,430View on GitHub↗

    PixiJS is a hardware-accelerated 2D rendering engine and HTML5 canvas library. It functions as a web-based graphics engine that utilizes WebGL to draw interactive digital content, shapes, text, and images in the browser. The engine provides a specialized pipeline for high-performance 2D graphics, featuring a scene-graph hierarchy for organizing visual objects and a system for dynamic texture management. It includes capabilities for applying visual effects through masks, filters, and blend modes. The project covers broad functional areas including digital asset loading, user input processing

    TypeScript
    View on GitHub↗47,430
  • dmitrybaranovskiy/raphaelDmitryBaranovskiy avatar

    DmitryBaranovskiy/raphael

    11,284View on GitHub↗

    Raphael is a JavaScript library for creating, manipulating, and animating scalable vector graphics. It provides a programmatic interface and a cross-browser renderer for drawing 2D vector graphics and complex shapes within a web browser. The project functions as an SVG animation framework and drawing API, allowing for the construction of diagrams, charts, and custom illustrations. It enables the creation of motion graphics through the transformation of vector elements using coordinate systems and easing functions. The library covers capabilities for scalable vector rendering, dynamic data vi

    JavaScript
    View on GitHub↗11,284
  • apache/echartsapache avatar

    apache/echarts

    66,629View on GitHub↗

    Apache ECharts is a JavaScript data visualization library used for rendering interactive charts and complex data visualizations in web browsers. It functions as a canvas-based charting engine and a statistical data visualization suite that transforms datasets into visual representations. The framework provides specialized capabilities for three-dimensional data visualization, including the generation of 3D plots and globe visualizations. It also serves as a web-based geographic mapping tool for overlaying heatmaps, routes, and data distributions onto interactive maps. The library covers a br

    TypeScriptapachecanvascharting-library
    View on GitHub↗66,629
  • createjs/easeljscreatejs avatar

    createjs/easeljs

    8,168View on GitHub↗

    EaselJS is a JavaScript library for creating interactive 2D graphics and animations using the HTML5 Canvas element. It functions as a 2D animation framework, a canvas scene graph manager, and an interaction wrapper for detecting and responding to mouse and touch events. The library features a rendering pipeline that utilizes WebGL to increase the drawing performance of bitmap and cached content. It organizes visual elements into a hierarchical display list, allowing nested groups of 2D graphics objects to be transformed and animated as single units. Its capabilities cover the rendering of ve

    JavaScript
    View on GitHub↗8,168
  • google/skiagoogle avatar

    google/skia

    10,762View on GitHub↗

    Skia is a high-performance 2D graphics rendering library used for drawing text, geometries, and images on digital surfaces. It functions as a hardware-accelerated graphics engine that offloads drawing operations to the GPU, a vector graphics processor for SVG and complex paths, and a typography engine for shaping and drawing characters with Unicode support. The project provides a cross-platform image codec for encoding and decoding standard image formats into raw pixel data across multiple operating systems. It also enables the development of user interfaces that maintain visual consistency a

    C++
    View on GitHub↗10,762
  • recharts/rechartsrecharts avatar

    recharts/recharts

    27,241View on GitHub↗

    This project is a declarative data visualization library that provides a composable suite of user interface components for rendering interactive charts. It functions as an SVG-based charting engine, allowing developers to construct complex visualizations by nesting modular building blocks such as axes, grids, legends, and data series within a unified layout. The library distinguishes itself through a highly responsive architecture that automatically reconciles layout changes and maps data domains to pixel coordinates using mathematical scale functions. It prioritizes performance through memoi

    TypeScriptchartcharting-librarycomponents
    View on GitHub↗27,241
  • chartjs/chart.jschartjs avatar

    chartjs/Chart.js

    67,526View on GitHub↗

    Chart.js is a declarative data visualization framework that renders interactive, responsive charts directly onto an HTML5 canvas element. It functions as a configuration-driven engine, transforming structured datasets into complex graphical representations by merging user-defined settings with global defaults. The library utilizes a high-performance rendering pipeline that executes drawing commands during each animation frame to maintain smooth visual feedback. The project distinguishes itself through a modular, extensible architecture that allows developers to register custom scales, control

    JavaScriptcanvaschartgraph
    View on GitHub↗67,526
  • brooooooklyn/canvasBrooooooklyn avatar

    Brooooooklyn/canvas

    2,257View on GitHub↗

    Canvas is a headless vector graphics engine and two-dimensional graphics rendering library built on a native graphics library with zero system dependencies for server-side drawing. It provides a programmatic shape construction and manipulation library supporting bezier curves, boolean operations, and native rendering without requiring a display server. The library renders shapes, paths, text, and images onto virtual memory surfaces and off-screen drawing areas for server-side image generation, vector animation rendering, and PDF generation. It supports path boolean operations to compute comp

    Rustcanvasn-apinapi
    View on GitHub↗2,257
  • canvg/canvgcanvg avatar

    canvg/canvg

    3,832View on GitHub↗

    canvg is a JavaScript graphics library and rendering engine designed to parse SVG vector data and draw the resulting graphics onto HTML5 canvas elements. It functions as a pipeline that transforms structured vector markup into pixel-based output for use in web browsers. The library provides a framework for web vector graphics animation, executing rendering cycles to maintain consistent visual motion. It also enables interactive vector graphics by mapping user input, such as mouse clicks and touch events, to specific shapes within the rendered canvas. The engine handles vector-to-pixel transf

    TypeScriptcanvashacktoberfestjavascript
    View on GitHub↗3,832
  • facebookarchive/keyframesfacebookarchive avatar

    facebookarchive/Keyframes

    5,294View on GitHub↗

    Keyframes is a cross-platform animation library and playback engine designed to render Adobe After Effects shape animations as high-quality vector graphics on mobile devices. It functions as a vector animation player that executes complex path and shape animations using a JSON-based data format, removing the need for rasterized video files. The system enables the conversion of shape-based animations from After Effects into a portable schema for delivery across both Android and iOS platforms. This ensures visual consistency by utilizing a shared framework to render the same vector animation da

    JavaScript
    View on GitHub↗5,294
  • pixieditor/pixieditorPixiEditor avatar

    PixiEditor/PixiEditor

    7,840View on GitHub↗

    PixiEditor is a multi-functional graphics suite that serves as a pixel art editor, a node-based graphics editor, and a vector graphics tool. It functions as a shader-based painting tool and 2D animation software, providing a comprehensive environment for creating raster images and frame-by-frame motion. The project is distinguished by its use of node-based workflows for building complex image transformations, visual effects, and custom digital brush designs. It utilizes a shader-based brush engine and a node graph to define personalized painting tool behaviors and procedural animations. The

    C#2davaloniauicsharp
    View on GitHub↗7,840
  • svgdotjs/svg.jssvgdotjs avatar

    svgdotjs/svg.js

    11,796View on GitHub↗

    svg.js is a JavaScript library and toolkit for programmatically creating, modifying, and querying Scalable Vector Graphics in the browser. It functions as a programmable interface and DOM wrapper that allows developers to manipulate vector elements through a standardized API rather than writing raw XML. The library includes a dedicated animation framework for creating fluid motion and visual transitions. This is supported by tools for path morphing and the use of timelines and easing functions to animate vector graphics. The toolkit covers a broad range of capabilities, including geometric t

    JavaScriptanimationjavascriptsvg
    View on GitHub↗11,796
  • gcssloop/androidnoteGcsSloop avatar

    GcsSloop/AndroidNote

    9,332View on GitHub↗

    AndroidNote is a technical knowledge base and reference resource for Android development. It provides comprehensive guidance on application architecture, custom view development, and advanced graphics programming. The project is distinguished by its depth in visual implementation, covering pseudo-3D perspective projections via virtual cameras and complex 2D rendering using Bézier curves and PorterDuff color blending. It also provides detailed methodologies for app modularization and the management of internal libraries through private Maven repositories and JitPack. The reference surface ext

    Javaandroidandroid-studiocustom-view
    View on GitHub↗9,332
  • airbnb/lottie-webairbnb avatar

    airbnb/lottie-web

    31,926View on GitHub↗

    This project is a cross-platform animation engine and vector animation player designed to render complex motion graphics within web browsers. It functions as a declarative motion framework, allowing developers to decouple visual design from application logic by using structured data files to define sophisticated animations. The library distinguishes itself by offering multiple rendering paths, including native support for vector graphics through the browser document object model and raster-based drawing via canvas elements. It utilizes a dedicated property interpolation engine to calculate ke

    JavaScript
    View on GitHub↗31,926
  • flipboard/react-canvasFlipboard avatar

    Flipboard/react-canvas

    13,203View on GitHub↗

    react-canvas is a library for drawing user interface elements to a hardware-accelerated canvas instead of the standard document tree. It provides a system for rendering components to a canvas to improve rendering speed and frame rates. The project includes a layer manager to organize visual elements and cache expensive drawing operations. It features a text engine capable of rendering multi-line text with precise character metric measurements and truncation, as well as a virtualized list system that processes only visible items to maintain smooth scrolling. Interaction is handled through a c

    JavaScript
    View on GitHub↗13,203