Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. lit
  3. <editor-container>

<editor-container>

MPL-2.0TypeScriptv0.22.4

A toolkit for building block-based editors and collaborative applications with native web components and CRDT-based real-time collaboration.

Visit WebsiteGitHubGitHub
5.8k stars549 forks0 contributors

What is <editor-container>?

BlockSuite is a content editing tech stack for the web, providing a framework and UI components to create customizable editors and collaborative applications. It originated from the AFFiNE knowledge base project and is designed to handle multimodal content, complex knowledge structures, and real-time collaboration natively.

Target Audience

Developers building customizable content editors, collaborative applications, or knowledge base tools that require block-based editing, real-time collaboration, and framework-agnostic components.

Value Proposition

Developers choose BlockSuite for its native CRDT-based real-time collaboration, framework-agnostic web components that work with React, Vue, and others, and its dual-editor approach with PageEditor for documents and EdgelessEditor for graphics.

Overview

🧩 Content editing tech stack for the web - BlockSuite is a toolkit for building editors and collaborative applications.

Use Cases

Best For

  • Building block-based document editors with real-time collaboration capabilities.
  • Creating graphics editors that share rich-text capabilities with document editors.
  • Developing framework-agnostic editing components that integrate with React, Vue, or other web frameworks.
  • Implementing complex knowledge base applications requiring multimodal content editing and cross-document state management.
  • Building collaborative applications with native CRDT-based synchronization and document streaming.
  • Customizing or extending editors with type-safe editing logic using a command mechanism similar to React hooks.

Not Ideal For

  • Projects requiring immediate production stability with long-term support guarantees.
  • Teams needing drop-in, fully styled editors without significant customization or CSS work.
  • Applications targeting legacy browsers without Web Components support or with strict JavaScript performance constraints.
  • Simple text editing tasks where block-based complexity and collaboration are unnecessary.

Pros & Cons

Pros

Native CRDT Collaboration

Built-in real-time synchronization using Yjs enables seamless multi-user editing out of the box, as emphasized in its collaboration-ready design and document streaming features.

Framework-Agnostic Components

All editors and components are native web components, making them interoperable with React, Vue, and other frameworks without framework lock-in, as highlighted in the architecture.

Dual Editor Presets

Includes both PageEditor for documents and EdgelessEditor for graphics, sharing rich-text capabilities for flexible multimodal editing, demonstrated in AFFiNE's demo.

Type-Safe Editing Logic

Command mechanism similar to React hooks allows writing complex, type-safe editing operations, reducing bugs in custom extensions as described in the features.

Cons

Early Development Stage

The README explicitly states it's in an early stage with components and extensions under refinement, leading to potential breaking changes and incomplete features.

Complex Architecture

Involves multiple packages (store, inline, block-std, etc.) and requires understanding of CRDT concepts, making setup and customization more challenging than simpler editors.

Limited Ecosystem

As a newer project, it lacks the extensive third-party plugins, community resources, and battle-tested documentation of established alternatives like ProseMirror or Slate.

Open Source Alternative To

<editor-container> is an open-source alternative to the following products:

Notion
Notion

A productivity and note-taking web application that offers databases, kanban boards, wikis, calendars, and reminders. It integrates many workspace tools into one platform.

Frequently Asked Questions

Quick Stats

Stars5,779
Forks549
Contributors0
Open Issues179
Last commit8 days ago
CreatedSince 2022

Tags

#web-components#content-editing#collaborative-editing#vanilla-js#real-time-collaboration#components-library#rich-text-editor#components#crdt#editor#collaboration#editor-framework#local-first#state-management#knowledge-base

Built With

T
TypeScript
y
yjs
w
web-components

Links & Resources

Website

Included in

lit1.7k
Auto-fetched 1 day ago

Related Projects

<model-viewer><model-viewer>

Easily display interactive 3D models on the web and in AR!

Stars8,019
Forks918
Last commit6 days ago
<light-gallery><light-gallery>

A customizable, modular, responsive, lightbox gallery plugin.

Stars7,002
Forks1,307
Last commit1 month ago
<rapi-doc><rapi-doc>

RapiDoc -WebComponent for OpenAPI Spec

Stars1,887
Forks317
Last commit2 months ago
<lottie-player><lottie-player>

Lottie viewer/player as an easy to use web component! https://lottiefiles.com/web-player

Stars1,656
Forks184
Last commit16 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub