30 open-source projects similar to 3b1b/manim, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Manim alternative.
This project is a programmatic animation engine designed to create mathematical visualizations through executable scripts. It functions as a mathematical visualization tool that renders parametric curves, equations, and coordinate systems to translate abstract concepts into high-resolution video. The system features an interactive scene renderer that allows for the execution of code snippets and real-time manipulation of scene states before final rendering. It includes an automated animation workflow that manages rendering checkpoints, scene playback, and video sequencing directly from a text
Tinyrenderer is a C++ library designed as an educational tool for building a 3D graphics pipeline from scratch. It provides a software-defined rendering environment that executes all geometric transformations and rasterization tasks on the central processor, intentionally avoiding reliance on external hardware acceleration or graphics libraries. The project serves as a pedagogical resource for understanding the fundamental mathematical principles of computer graphics. It enables users to implement custom shader pipelines and core rendering techniques, such as barycentric coordinate calculatio
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,
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
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
OpenSCAD is a script-based 3D modeler and parametric CAD tool that generates three-dimensional solid objects from programmable scripts. It utilizes a constructive solid geometry engine to create complex shapes by performing boolean operations on basic geometric primitives. The system functions as a compiler that transforms a functional language into geometric representations, allowing for precise dimensional control through variables and functions. It features a WebAssembly implementation that enables the geometry pipeline to execute directly within web browsers. The software covers a broad
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
This project provides a collection of visual guides, technical documentation, and animation generation tools designed to explain the mathematical mechanics of neural network layer operations. It serves as an educational resource for understanding the architecture and data mapping processes involved in deep learning. The toolset distinguishes itself by programmatically generating visual representations of standard, transposed, and dilated convolution layers. By utilizing a declarative configuration model, it maps mathematical parameters—such as kernel sizes, strides, and padding—to coordinate-
This project is an AI-driven video production pipeline and multimodal content synthesizer. It utilizes an orchestration framework of specialized agents to transform long-form narratives and text stories into formatted production scripts and final video episodes. The system distinguishes itself through a multi-stage synthesis process that manages the transition from raw text to media assets. This includes automated storyboarding systems that deconstruct scripts into visual sequences, tools for maintaining consistent character visual designs and voice profiles, and a generative media assembly p
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
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
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
Hamburgers is a CSS component library providing a collection of animated navigation icons. These components use CSS transitions to toggle between collapsed and active states, serving as reusable style definitions for interactive user interface elements. The library features customizable UI icons where colors and dimensions are controlled via CSS configuration variables. This allows for the modification of icon appearance and style during the build process. The project covers the implementation of animated menu navigation and responsive web interface design through the use of frontend visual
This project is a Java GUI framework used to build cross-platform desktop, mobile, and embedded applications. It centers on a hardware accelerated graphics engine that provides 2D and 3D visualizations and visual effects, complemented by a reactive UI binding system for synchronizing data and interface updates. The framework distinguishes itself through the FXML markup language, which separates the visual structure of an interface from its procedural logic. It also includes a dedicated CSS styling engine that allows for the customization of component appearances using external stylesheets and
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
Bodymovin is a motion graphics pipeline tool and plugin that exports After Effects animations into JSON files for native rendering on web and mobile platforms. It serves as a cross-platform animation bridge, converting complex vector motion designs into a portable Lottie format for use across different operating systems and frameworks. The project enables high-performance web animation by rendering motion graphics using SVG, Canvas, or HTML. It ensures consistent playback across diverse environments by converting dynamic expressions into static keyframes during the export process. The toolse
This project is a mathematical visualization library and a collection of algorithmic art. It serves as a data visualization guide and an interactive visualizer, providing a set of implementations for rendering complex geometric shapes and mathematical concepts through code. The collection focuses on generating aesthetic patterns and precise graphic elements, including fractals, Bezier curves, and Lissajous patterns. It uses recursive functions and iterative algorithms to produce complex geometric structures and algorithmic art. The library covers a range of capabilities including interactive
Animate.css is a CSS animation library and browser-based motion framework. It provides a collection of pre-made animations and motion effects used to add visual movement to web elements across different browsers. The library is designed as an accessibility-aware system that automatically disables animations when the operating system has a reduce motion setting enabled. This ensures that web motion respects user preferences for accessibility. The framework covers front-end visual effects and cross-browser UI styling. It utilizes a utility-first architecture with predefined style classes to ma
model-viewer is a web-based 3D model viewer provided as a web component for rendering interactive three-dimensional assets and animations directly in a browser. It functions as a specialized GLTF web renderer designed to display GLTF and GLB files with settings optimized for performance and quality. The project includes a WebXR augmented reality player that projects 3D models into real-world environments using mobile device cameras and spatial tracking. It also features a visual regression testing tool capable of generating golden images and comparing renders to detect visual regressions in 3
MoviePy is a Python video editing library and automated video processor designed for programmatically cutting, concatenating, and manipulating video and audio files. It serves as a non-linear video editor and an interface for FFmpeg to handle the reading, writing, and conversion of diverse media formats and codecs. The library enables automated video composition through the layering of multiple video and audio streams using transparency and coordinate-based positioning. It supports dynamic content generation by inserting text overlays and performing custom video frame processing where raw fra
This project is a diffusion-based AI art generator and animation framework used to create digital images and motion graphics from text prompts. It functions as a system for producing stylized videos and AI art through iterative diffusion sampling and neural network models. The framework distinguishes itself through specialized tools for 3D depth animation, using depth-map transformations to create spatial movement. It also includes neural style transfer capabilities to apply specific artistic looks, such as watercolor or pixel art, and utilizes optical flow frame blending to reduce flickering
This is a web-based 3D game engine designed for creating high-performance interactive experiences on web and mobile platforms. It functions as a real-time graphics renderer and physics engine, utilizing a component-based scene graph to organize entities and their properties for three-dimensional rendering. The engine includes a visual scene editor that allows for the design of environments through a graphical interface, which then exports these assets as executable code. Its broader capabilities cover real-time graphics rendering for 2D and 3D elements, physical world simulation for object c
This project is a geospatial data rendering engine and OpenStreetMap road network visualizer. It functions as a vector map visualization tool that imports geocoded area data and converts road layouts into visual layers for digital or physical output. The system enables the creation of generative map art and stylized images intended for physical production via pen-plotters or laser cutters. It allows for the manipulation of line widths and colors of city streets to produce custom visual representations of urban environments. The engine provides capabilities for urban road visualization, geogr
Magnum is a C++ middleware suite for cross-platform graphics development and real-time data visualization. It provides a hardware-agnostic rendering layer that translates graphics commands into platform-specific calls, ensuring consistent behavior across different GPU drivers and APIs such as Vulkan. The project focuses on decoupling application logic from underlying hardware through abstract graphics and system utilities. It features a plugin-based resource importer for 3D assets and audio, a hierarchical scene graph for spatial transformations, and a high-performance signal-based event syst
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
jMonkeyEngine is a Java-based 3D game engine and cross-platform graphics framework. It provides the core tools necessary for developing three-dimensional games and interactive simulations, focusing on real-time rendering and the management of spatial environments. The engine includes a dedicated 3D physics simulation toolkit for handling rigid body dynamics and collision detection. It also features a game asset pipeline for importing and managing 3D models, textures, and audio files during runtime. The framework covers broad capability areas including 3D scene rendering, physics-based simula
ogl is a WebGL graphics library and 3D scene graph engine designed for rendering three-dimensional scenes. It provides a lightweight framework for managing geometries and coordinating spatial transformations within a hierarchical system. The project includes a PBR shader system for creating realistic materials and a GPGPU computation framework for performing large-scale general-purpose calculations and particle simulations on the graphics processor. It also features a post-processing suite for applying visual filters to rendered scenes via frame buffers. The library covers broader capabiliti
Shotcut is a professional-grade, cross-platform non-linear video editor built on the MLT multimedia framework. It provides a comprehensive suite for post-production, supporting multi-track timeline editing, high-fidelity color processing, and complex visual effects. The application is designed to handle diverse audio and video formats natively, ensuring high-resolution and HDR workflows are managed within a unified environment. The software distinguishes itself through a modular architecture that emphasizes performance and precision. It utilizes a GPU-accelerated rendering pipeline and proxy-
This project is a declarative visualization library and geospatial framework designed for rendering large-scale data sets within web browsers. It functions as a high-performance graphics engine that leverages hardware acceleration to display complex 2D and 3D visual layers, enabling the visualization of millions of data points through a structured, component-based syntax. The framework distinguishes itself through its ability to synchronize custom data visualizations with third-party mapping platforms. By managing camera states and coordinate systems, it allows developers to overlay high-perf
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