30 open-source projects similar to hufe921/canvas-editor, 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.
CKEditor 5 is a modular rich text editor framework and JavaScript UI component used to build customizable visual editors. It serves as a system for generating HTML or Markdown content, providing both full rich-text editor components and restricted inline editor components for web applications. The framework includes a collaborative editing engine for real-time simultaneous editing, change tracking, and threaded commenting. It features an AI text assistant for polishing, rewriting, and generating content, as well as a document export engine that transforms rich text into PDF and Word files. T
Xray is a collaborative text editor and distributed workspace manager that utilizes conflict-free replicated data types to synchronize real-time edits and directory structures across peers. It functions as both an Electron-based desktop application and a headless editor server that manages workspaces and file systems remotely for connected clients. The project distinguishes itself by integrating fine-grained version control tracking, recording keystroke-level changes and uncommitted edits between Git commits. It employs a decentralized synchronization model for working copies and uses operati
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
Yoopta-Editor is a headless framework for building customizable block-based rich text editors. It utilizes a JSON-based document engine to manage editor state and provides a WYSIWYG interface for creating structured documents. The system separates core document logic from the visual layer, allowing for complete customization of the user interface. The framework is designed for real-time collaborative editing, featuring a synchronization engine with conflict resolution and remote cursor presence tracking. It offers a highly extensible plugin system that allows developers to define new content
mPDF is a PHP library that transforms UTF-8 encoded HTML and CSS into formatted PDF documents. It serves as a PDF generation engine and document architect capable of converting web pages and HTML forms into professional files. The project is distinguished by its multilingual rendering capabilities, providing comprehensive support for bidirectional text, right-to-left scripts, and CJK languages using Unicode font embedding and OpenType layout processing. It further enables professional print-ready design through advanced color modeling in CMYK, precise page dimensioning, and compliance with PD
Liveblocks is a realtime collaboration infrastructure platform that synchronizes application state, documents, and user presence across multiple participants using conflict-free replicated data types. It provides a managed backend for collaborative text editors, threaded commenting and annotation systems, in-app notifications, and AI copilot deployment, all built on a WebSocket transport layer with server-side room management APIs. The platform distinguishes itself through a headless component primitive system that exposes unstyled React hooks and composable building blocks, allowing develope
This project is a memory-safe library implemented in Rust that provides a high-performance engine for managing shared, distributed data states. It functions as a conflict-free replicated data type implementation, enabling real-time collaborative editing and state synchronization across distributed systems without the need for a central server or manual conflict resolution. The library distinguishes itself through a cross-language binding framework that allows native applications in environments like Python, Swift, and WebAssembly to interact with the same shared data protocol. It utilizes a c
This project is a framework for building real-time collaborative rich-text editing environments. It provides a structured, schema-based engine that enforces document integrity while allowing multiple users to modify content simultaneously through synchronized state management and conflict resolution protocols. The editor distinguishes itself through a highly modular plugin architecture that supports the integration of complex, interactive UI components built with external frontend libraries. By utilizing a custom rendering engine and a versioned, immutable document state tree, it enables deve
Hocuspocus is a backend framework designed to facilitate real-time collaborative editing and state synchronization in web applications. It functions as a server-side infrastructure that manages persistent WebSocket connections, enabling multiple users to edit shared documents simultaneously while maintaining data consistency through a conflict-free replicated data type engine. The platform distinguishes itself through a modular, middleware-driven architecture that allows developers to intercept document lifecycle events, enforce custom access control policies, and integrate external services.
xi-editor is a high-performance text editor core written in Rust. It employs a client-server architecture that separates the backend editor logic from the user interface, allowing diverse frontends to communicate with the core via a standardized protocol. The project is distinguished by its use of rope-based text buffers for efficient manipulation of large documents and a collaborative engine powered by conflict-free replicated data types to synchronize concurrent edits. It further features an extensible plugin system that integrates external binaries and third-party tools through JSON-based
json-joy is a comprehensive library for building real-time collaborative applications and distributed systems. It provides a robust framework for managing shared JSON-like data structures that automatically merge concurrent edits from multiple users, ensuring consistent state across all replicas without requiring a central coordination server. The project distinguishes itself through a high-performance approach to data handling, utilizing conflict-free replicated data types and logical clock-based synchronization to maintain data integrity. It includes a specialized engine for navigating and
Lexical is a modular rich text editor framework used to build extensible web-based editors. It functions as a state-driven content editor that maintains a serializable, immutable snapshot of document content to ensure predictable updates and accessibility compliance. The framework is distinguished by its plugin-based architecture and customizable node framework, which allow developers to extend editor behavior through specialized content nodes and encapsulated runtime logic. It also includes a collaborative editing engine capable of synchronizing document state across multiple clients in real
Firepad is a Firebase collaborative text editor and rich text editor component. It functions as a real-time collaborative framework and operational transformation engine designed to synchronize document editing across multiple concurrent users. The project provides tools for shared document synchronization and collaborative presence tracking, allowing users to see live cursor positions and identifiers. It supports rich text authoring integration for both formatted content and code editing. The system manages document consistency through shared document synchronization and provides capabiliti
Automerge is a distributed state synchronization engine and library for conflict-free replicated data types. It enables multiple nodes to perform concurrent updates to a shared dataset while guaranteeing that all replicas eventually converge to the same state. The project provides a high-performance implementation written in Rust to manage state merging and synchronization. It employs a byte-compressed synchronization protocol to transmit minimal delta updates between peers, facilitating data consistency in peer-to-peer and real-time collaborative environments. The system covers broad capabi
TinyBase is a reactive data store and in-memory relational database designed for client-side state persistence. It serves as a local-first sync engine that merges distributed state using conflict-free replicated data types and logical clocks to ensure deterministic data convergence. The project features a schema validation library that converts external definitions from tools like Zod, Yup, and TypeBox into type-safe store definitions. It provides an infrastructure for real-time collaborative editing, utilizing synchronization with Automerge, Yjs, and PartyKit to maintain consistent state acr
This project is a JavaScript spreadsheet component and web-based data table that provides an interactive grid for managing tabular data. It functions as a cross-framework UI component compatible with React, Vue, and jQuery, and can also be embedded as a standalone web component. The grid is specifically designed for XLSX interoperability, allowing users to import and export XLSX files while preserving formulas and styles. It distinguishes itself through real-time collaboration for simultaneous multi-user editing and a flexible system for creating custom cell editors and specialized column typ
Loro is a conflict-free replicated data type (CRDT) framework and collaborative state engine designed for building real-time collaborative applications. It provides a distributed data synchronizer that enables multiple users to edit shared documents and complex nested structures—such as maps, lists, trees, and counters—with automatic state convergence without requiring a central server. The project distinguishes itself through a versioned document store that supports branching, forking, and merging via a directed acyclic graph of causal operation history. It enables advanced version control c
This project is a cloud-based office suite and self-hosted document server that enables the creation and editing of documents, spreadsheets, and presentations. It functions as a headless office application, utilizing a server-side processing engine to handle file rendering and formatting without requiring a local graphical user interface. The system operates as a real-time collaborative editor, employing operational transformation to allow multiple users to edit files simultaneously. It also serves as a web-based document processor capable of automating office tasks through macro execution an
Sanity is a headless content management platform and structured content API that stores data and delivers it via an API to any frontend or device. It functions as a real-time content studio, providing a customizable editing environment for managing digital assets and documents through a type-safe, decoupled data layer. The platform is distinguished by a graph-oriented query engine using the GROQ language to filter, transform, and retrieve structured content. It enables real-time collaborative editing with live presence indicators and a schema-driven approach to document management. The syste
This project is a document editing framework designed for web applications, providing a visual interface for modifying files while maintaining compatibility with standard document formats. It functions as both a browser-based rich text editor and a headless processing engine, allowing for the programmatic parsing, manipulation, and generation of document files in server-side environments. The framework distinguishes itself through its integration with external intelligence models, exposing document manipulation functions as standardized tool calls. This enables automated content generation, d
BookStack is a self-hosted knowledge base platform designed for organizing, storing, and managing structured documentation. It utilizes a hierarchical content model that arranges information into nested trees of books, chapters, and pages, supported by a dedicated search index for rapid retrieval across the entire knowledge base. The platform distinguishes itself through deep integration with enterprise identity providers, allowing organizations to centralize authentication and access control via LDAP, SAML, or OIDC. It provides extensive administrative control over the content lifecycle, inc
pdfmake is a JavaScript PDF generation library and declarative document engine that transforms structured JavaScript objects into formatted PDF files. It functions as a layout engine capable of producing documents on both the client side within a web browser and on the server side using Node.js. The library utilizes a declarative approach to translate object-based document definitions into final PDFs. It distinguishes itself through a virtual layout engine that calculates element positions and page breaks and an inheritance-based style system that uses dictionaries to maintain visual consiste
This project is a plugin framework for the Draft.js rich text editor, providing a system to add custom behaviors, decorators, and keyboard shortcuts. It functions as a toolkit for extending the editor with advanced formatting and interactive elements, while also providing a React UI component library for managing toolbars and popups. The framework is distinguished by its specialized support for social mention systems, enabling the detection and formatting of hashtags and user mentions as interactive entities via autocomplete triggers. It also includes a comprehensive suite of rich media exten
Grid.js is a framework-agnostic JavaScript library for rendering interactive data grids. It allows for the display of structured information in tabular formats across different frontend environments, supporting data population from static arrays or JSON imports. The library features a plugin system for extending user interface components and logic, as well as a custom data pipeline for transforming information before it is displayed. It includes built-in support for multilingual localization to translate interface elements and messages. The project covers core data visualization capabilities
Sigil is a multi-platform ebook authoring suite and EPUB editor designed for creating, modifying, and structuring electronic publications. It serves as a digital publication tool for managing metadata and generating tables of contents for digital books. The software functions as an EPUB validator, checking ebook files for syntax errors and compliance with industry standards to ensure valid rendering. It also supports an extensible workspace where custom automation scripts can be used to add specialized capabilities. The suite covers digital content structuring and publication editing, provid
tsparticles is a JavaScript particle animation library and configuration-driven visual effects engine used to create customizable effects, confetti, and interactive backgrounds using HTML5 Canvas. It functions as a plugin-based graphics engine and a web component animation engine, allowing for the generation of complex behaviors and themes through structured JSON configuration objects. The project provides a cross-framework animation wrapper with dedicated compatible components for integrating effects into React, Vue, Angular, and Svelte. Its modular architecture allows users to extend the en
LogicFlow is an SVG-based flowchart editing framework and visual graph editor used for building customizable business process diagrams. It serves as a customizable diagramming engine for rendering business process models, entity relationship diagrams, and unified modeling language charts. The system is characterized by a plugin-based architecture that allows developers to define specialized graphical elements and register pluggable modules. A distinctive feature is its overlay system, which positions standard HTML components on top of the SVG canvas to create interactive menus and control pan
This project provides a React component wrapper for a block-based rich text editor. It enables the integration of a structured content editing environment into React applications, organizing document data into modular, independent blocks for flexible manipulation and storage. The component manages the editor instance lifecycle and facilitates state synchronization, allowing developers to use either controlled or uncontrolled data patterns. It supports extensibility through the registration of external plugins, enabling the addition of specialized formatting tools, media handling, and custom b
Jupyter Book is a computational book publisher and static site generator that converts Jupyter notebooks and markdown files into interactive web books and publication-quality PDF documents. It serves as a markdown-based documentation tool that executes embedded code at build time and caches the resulting outputs for static display. The system distinguishes itself by supporting interactive data publications, allowing readers to engage with live computational widgets and launch notebooks in remote execution environments. It extends standard markdown with a system of roles and directives to supp
XLForm is a declarative UI library and framework for generating synchronized iOS table-view forms from structured definitions. It provides a toolkit for building mobile data-entry screens using Swift and Objective-C, allowing developers to create interfaces based on declarative sections and rows. The framework features dynamic interface synchronization and conditional logic to manage row visibility and editing restrictions. It supports the creation of dynamic multivalued sections where users can insert, delete, or reorder rows at runtime. The library includes a variety of interactive input c