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

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
jonobr1 avatar

jonobr1/two.js

0
View on GitHub↗
8,636 stars·461 forks·JavaScript·MIT·8 vuestwo.js.org↗

Two.js

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 server-side environments without a browser.

The library covers vector shape generation, SVG data import, and the rendering of bitmap imagery. It includes a frame-based animation loop for motion graphics and a set of styling tools for fills, strokes, and gradients. Additionally, it provides object lifecycle management to release memory and unbind events in long-running sessions.

Features

  • 2D Graphics Frameworks - Provides a unified framework for rendering 2D shapes and animations across multiple web-based backends.
  • Vector Graphics Renderers - Provides a multi-backend graphics engine for rendering 2D vector shapes via SVG, WebGL, or Canvas.
  • Shape Drawing - Provides tools for programmatically generating geometric primitives and complex vector paths with custom styling.
  • Abstraction-Layer Rendering Backends - Implements a renderer-agnostic abstraction layer to switch between SVG, Canvas2D, and WebGL backends.
  • Headless Renderers - Implements a node-based renderer to generate 2D vector graphics in server-side environments without a browser.
  • Scene Management Systems - Organizes complex hierarchies of vector shapes and images with shared transformations.
  • Object Hierarchy Management - Manages the nesting of drawable objects to propagate transformations and handle complex scene compositions.
  • Scene Graphs - Uses a hierarchical scene graph to organize objects and propagate spatial transformations and styles.
  • Multi-Backend Renderers - Offers a renderer-agnostic abstraction layer that allows switching between SVG, Canvas2D, and WebGL output technologies.
  • Unified Vector APIs - Provides a single set of drawing commands that translate to backend-specific instructions at runtime.
  • Vector Shape Construction - Generates 2D geometric primitives and paths with customizable fills, strokes, and opacity.
  • Animation Loops - Implements a continuous animation loop that updates object properties at a consistent frame rate.
  • Scene Graphs - Includes a system for organizing 2D objects into hierarchical groups to manage spatial transformations and property propagation.
  • Bitmap Rendering - Supports loading and displaying static images, sprite sheets, and image sequences alongside vector content.
  • Headless Implementations - Provides a node-based canvas implementation for generating 2D drawings on a server without a browser.
  • Dynamic SVG Manipulation - Imports and programmatically manipulates SVG files to create dynamic scenes in the browser.
  • Headless Vector Engines - Generates 2D drawings on a server or cloud environment using a node-based headless canvas.
  • SVG-Based Vector Rendering - Parses Scalable Vector Graphics files and converts them into vector elements for the scene.
  • SVG Parsers - Translates SVG XML data into internal scene objects while preserving geometric and styling attributes.
  • Object Grouping - Allows clustering multiple objects into single entities for shared styling and collective transformations.
  • Interactive Animation Systems - Facilitates building smooth motion graphics and interactive visual elements using a continuous loop.
  • Vector Styling Tools - Provides tools for filling or stroking shapes using linear gradients, radial gradients, textures, or image sequences.
  • Data Visualization - Renderer-agnostic 2D drawing API.
  • Canvas and WebGL Graphics - Renderer-agnostic 2D drawing API with animation support.
  • Game Engines - Renderer-agnostic 2D drawing API.
  • Graphics and Rendering - Renderer-agnostic 2D drawing API.

Historique des stars

Graphique de l'historique des stars pour jonobr1/two.jsGraphique de l'historique des stars pour jonobr1/two.js

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Alternatives open source à Two.js

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Two.js.
  • paperjs/paper.jsAvatar de paperjs

    paperjs/paper.js

    15,054Voir sur GitHub↗

    Paper.js is an HTML5 Canvas vector graphics library and scripting framework used for creating and manipulating 2D shapes and paths. It functions as a vector animation framework and a headless vector graphics engine, allowing for the execution of graphics operations in both browser and server-side environments. The project features a dedicated SVG import and export engine to convert between native vector items and the SVG format. It includes a specialized boolean path operation toolkit for uniting, subtracting, and intersecting vector paths to create complex geometric shapes. The library cove

    JavaScript
    Voir sur GitHub↗15,054
  • createjs/easeljsAvatar de createjs

    createjs/easeljs

    8,168Voir sur 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
    Voir sur GitHub↗8,168
  • mrdoob/three.jsAvatar de mrdoob

    mrdoob/three.js

    113,086Voir sur 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
    Voir sur GitHub↗113,086
  • hiloteam/hiloAvatar de hiloteam

    hiloteam/Hilo

    5,932Voir sur GitHub↗

    Hilo is an HTML5 game engine for building 2D games that run across browsers and devices. It renders graphics through Canvas, DOM, or WebGL backends, automatically selecting the best option for the target environment. The engine provides a complete game development solution with sprite, skeletal, and particle animation, along with a texture atlas system for efficient image loading and rendering. The framework distinguishes itself through its integration of the DragonBones skeletal animation engine, which drives bone-based character movement without frame-by-frame sprites, and its Chipmunk phys

    JavaScriptcanvasgamehilo
    Voir sur GitHub↗5,932
Voir les 30 alternatives à Two.js→

Questions fréquentes

Que fait jonobr1/two.js ?

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.

Quelles sont les fonctionnalités principales de jonobr1/two.js ?

Les fonctionnalités principales de jonobr1/two.js sont : 2D Graphics Frameworks, Vector Graphics Renderers, Shape Drawing, Abstraction-Layer Rendering Backends, Headless Renderers, Scene Management Systems, Object Hierarchy Management, Scene Graphs.

Quelles sont les alternatives open-source à jonobr1/two.js ?

Les alternatives open-source à jonobr1/two.js incluent : paperjs/paper.js — Paper.js is an HTML5 Canvas vector graphics library and scripting framework used for creating and manipulating 2D… createjs/easeljs — EaselJS is a JavaScript library for creating interactive 2D graphics and animations using the HTML5 Canvas element. It… mrdoob/three.js — This project is a high-level 3D graphics engine designed to render complex, hardware-accelerated environments within… hiloteam/hilo — Hilo is an HTML5 game engine for building 2D games that run across browsers and devices. It renders graphics through… pixijs/pixi.js — PixiJS is a hardware-accelerated 2D rendering engine and HTML5 canvas library. It functions as a web-based graphics… google/skia — Skia is a high-performance 2D graphics rendering library used for drawing text, geometries, and images on digital…