30 open-source projects similar to chenglou/pretext, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Pretext alternative.
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
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
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
gg is a Go 2D graphics library and vector graphics engine designed for programmatic image generation. It provides a canvas rendering API to create custom 2D shapes, paths, and visual assets, which can be exported as PNG and JPG files. The toolkit enables the construction of complex geometry using Bezier curves and custom paths. It supports a variety of rendering operations, including filling and stroking paths, applying linear and radial gradients, and utilizing surface patterns. The library covers a broad range of capabilities, including text rendering with word wrapping and dimension measu
YYText is an iOS rich text framework used for rendering and editing complex attributed text. It features an asynchronous text rendering engine that calculates layout on background threads to maintain interface performance, alongside an attributed text serializer for converting rich text structures into storable formats. The framework provides specialized tools for non-rectangular text layout, allowing text to wrap around custom container paths and exclusion shapes. It also supports advanced typography requirements, including vertical text formatting for East Asian languages and the applicatio
react-native-skia is a cross-platform graphics framework that provides a high-performance 2D graphics engine for rendering shapes, paths, and images. It functions as a vector graphics engine and UI animation toolkit, allowing for hardware-accelerated visuals across mobile and web platforms. The project is distinguished by its integration of the Skia 2D graphics library, enabling a shader and filter pipeline for complex pixel-level effects. It supports the rendering of Lottie animations exported from After Effects and the execution of animations directly on the UI thread to maintain fluid moti
Slate is a customizable rich text editor framework that treats documents as a recursive tree of nodes. It functions as a schema-based, state-driven system designed to enforce structural constraints and manage nested components within a structured document model. The framework utilizes a plugin-based architecture to extend editor functionality, allowing for the injection of custom logic into the rendering and transformation pipeline. It supports real-time collaborative editing by synchronizing document operations across multiple users. The system covers a broad range of capabilities, includin
Wagtail is an open-source content management system built on the Django web framework. It provides a structured, tree-based approach to content modeling, allowing developers to define custom page types and reusable content components that are managed through a highly customizable administrative interface. The platform distinguishes itself through its flexible, block-based content composition system, which enables editors to assemble complex page layouts dynamically. It also offers robust support for multi-site and multi-lingual environments, allowing organizations to manage distinct websites
RenderCV is a command-line utility designed to transform structured YAML data into professionally typeset documents. By separating content from presentation, it allows users to maintain version-controlled resumes that are automatically rendered into high-quality PDF, HTML, and Markdown formats. The system leverages a specialized typesetting engine to ensure precise layout control and professional-grade typography. The project distinguishes itself through a schema-driven approach that enforces strict data validation, ensuring that input files are error-free before processing. Users can customi
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 virtual whiteboard component and vector graphics editor designed for creating diagrams with a hand-drawn aesthetic. It provides a canvas-based drawing engine that can be embedded directly into web applications, allowing users to manipulate shapes, upload images, and export visual data into standard formats like PNG, SVG, or JSON. The platform distinguishes itself through a real-time synchronization layer that supports multi-user collaboration across distributed environments. This engine utilizes end-to-end encryption to secure shared sessions and employs a local-first data p
Editly is a headless, programmatic video engine and automated assembler. It functions as a declarative video editor that generates MP4 and GIF exports from structured data or code, removing the need for a manual graphical user interface. The system is distinguished by its ability to integrate GLSL fragment shaders as visual layers within a programmatic timeline. It uses a configuration-based model to define clips, layers, and audio tracks, allowing for reproducible video assembly and the generation of custom programmatic graphics. The engine covers a broad range of media production capabilit
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
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
Blotter is a WebGL text rendering engine and fragment shader text visualizer. It provides a system for composing and previewing stylized text effects by applying custom GLSL fragment shaders to text elements on a web canvas. The project includes a shader editor for defining and updating custom shader logic and uniforms in real time. This interface allows for the creation of unique visual styles and the modification of rendering variables without reloading the underlying logic. The engine incorporates performance optimizations for WebGL rendering, utilizing texture atlas batching and a single
Luckysheet upgraded to Univer
KLineChart is a high-performance financial charting library and data visualization engine. It uses native browser canvas APIs to render interactive candlestick charts and time-series financial data for web and mobile applications. The library is built as a plugin-based framework, allowing for the integration of custom calculation logic and rendering routines. This modular architecture enables the addition of technical analysis visualization tools and custom indicators to financial dashboards. The system handles real-time market data updates and computes technical indicators to visualize mark
react-konva is a declarative React canvas graphics library and 2D vector graphics framework. It serves as a rendering engine and interactive canvas toolset that allows for the drawing and management of complex 2D shapes and graphics using a React component model. The library maps reactive component trees to an underlying object-oriented graphics scene graph, enabling the synchronization of visual states with application data. It provides specialized tools for building interactive graphical interfaces, including support for multi-touch gestures, drag-and-drop functionality, and real-time trans
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
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
PPTist is a browser-based presentation editor that functions as a PowerPoint-compatible online slide tool, capable of importing, editing, and exporting PPTX files directly in a web browser. It also serves as an AI-powered presentation generator, creating slide decks automatically from templates with AI-driven content generation, and includes a full slide animation and transition engine for applying entrance, exit, emphasis, and motion-path effects. The tool distinguishes itself as a cross-platform presentation application that works on both desktop and mobile browsers for slide editing and sl
node-canvas is a server-side 2D vector graphics and image processing library for Node.js. It provides a server-side implementation of the HTML5 Canvas API using the Cairo graphics library as its rendering engine to draw shapes, text, and paths. The library enables the programmatic generation of dynamic images and the creation of scalable vector graphics and PDF documents. It supports the registration of custom and system fonts for typography rendering and allows for the import of image assets via local paths, buffers, data URIs, and remote URLs. Capabilities include low-level pixel manipulat
GoJS is a JavaScript diagramming library and canvas-based visualization engine used to build interactive flowcharts, organizational charts, and network diagrams. It functions as a data-driven framework that binds JavaScript data models to visual elements, enabling bidirectional synchronization between the underlying data and the graphical representation. The library features a comprehensive graph layout engine capable of automatically arranging nodes into trees, grids, circles, or force-directed layouts. It distinguishes itself through a template-based system for generating visual parts and a
Lucky Canvas is a canvas-based lottery component library that enables developers to build interactive prize wheels, grid-based lottery games, and slot machines for web and mobile applications. The project provides a rendering engine that draws directly on HTML Canvas elements, with automatic device pixel ratio scaling to ensure crisp displays on high-DPI mobile screens. The library packages each lottery type as a self-contained plugin with its own configuration and rendering logic, and wraps the core canvas functionality in framework-specific bindings for Vue, React, Taro, and UniApp without
This is a Go-based PDF library used for the programmatic generation of PDF documents without relying on external C dependencies. It functions as a document generator, layout engine, security tool, and vector graphics engine for creating files containing text, images, and geometric shapes. The project distinguishes itself through a cell-based layout engine that manages automatic text wrapping, page breaks, and structured positioning. It provides specialized capabilities for vector graphics, including the rendering of Bézier curves and polygons, as well as a security toolkit for applying passwo
Painter is a declarative rendering system that transforms JSON definitions into styled visual images. It functions as a JSON-to-image rendering engine that converts structured layout data into vector shapes, styled text, and QR codes on a canvas. The system features a dynamic image template engine that utilizes relative coordinate calculations to determine element positions based on the boundaries of other components. It supports the creation of interactive templates where users can drag, scale, and delete elements in real-time, as well as the ability to update specific element properties wit
This project is a programmable font system and canvas typography engine that renders a geometric sans-serif typeface using raw coordinate data. It functions as a coordinate-based text animator, allowing for the real-time modification of glyph shapes and font weights. The system distinguishes itself through the ability to extract and manipulate the point coordinates of characters to create morphing effects, wave animations, and shape transitions. It enables dynamic weight interpolation and point-to-line visualizations, moving beyond static font rendering to produce procedural typography. The
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