Unlocking the Power of Reusable Web Blocks: A New Open Standard

From Moocchen, the free encyclopedia of technology

Introduction

If you’ve ever worked with modern content editors—whether in a blog platform, note-taking app, or content management system—you’ve likely encountered block-based editing. These editors break down pages into discrete units called blocks: paragraphs, images, videos, tables, and more. The concept has become nearly universal, with tools like WordPress, Notion, and Medium all adopting some form of block insertion. Typically, you press a + button or type a forward slash / to summon a menu of available blocks. While the user experience is intuitive, there’s a hidden flaw: every platform implements blocks in its own proprietary way.

Unlocking the Power of Reusable Web Blocks: A New Open Standard
Source: www.joelonsoftware.com

The Problem: Proprietary Blocks Limit Creativity

Today, if you want a calendar block, a Kanban board, or an interactive chart in your editor, you must code it from scratch—or rely on the vendor to add it. This lack of standardization creates a fragmented ecosystem where:

  • End-users suffer from limited block choices. Your favorite editor might lack the fancy task board you saw elsewhere.
  • Developers waste effort rebuilding the same block types for different platforms.
  • Blocks cannot be shared or moved between apps, locking users into a single tool.

Imagine writing a blog post in one system and wanting to embed a custom poll you built in another—today, that’s nearly impossible without manual work. The web deserves better.

Introducing the Block Protocol

To address these issues, we propose the Block Protocol—an open, free, and non-proprietary standard that defines how blocks can be embedded in any web application. The protocol is simple: any block that follows the specification can be used in any editor that supports the protocol. This means you can build a block once and have it work across WordPress, Notion, Ghost, and hundreds of other tools.

Key Principles

  • Open and free: No licensing fees, no vendor lock-in.
  • Universal: Any block type—from simple paragraphs to complex interactive dashboards—can be implemented.
  • Interchangeable: Users can pick blocks from a global library and embed them anywhere.

How the Block Protocol Works

The protocol defines a set of APIs that both blocks and hosting applications must implement. A block is essentially a self-contained HTML element with a defined interface for communication—like receiving data, responding to user actions, and managing state. Editors, in turn, provide a container that respects the block’s lifecycle.

  1. Block registration: Developers publish blocks that declare their capabilities (e.g., “this block accepts JSON input and outputs an interactive chart”).
  2. Editor integration: An editor loads the block’s code and passes it the necessary data via the protocol.
  3. Rendering: The block displays content and interacts with the user—all within the editor’s sandbox.

Currently, we have released a very early draft of the Block Protocol, along with sample blocks and a simple reference editor. The goal is to foster a community-driven open-source library of high-quality blocks.

Benefits for Everyone

For App Developers

Once you implement the protocol’s embedding code, you instantly gain access to thousands of pre-built blocks. No more wasting time building a calendar from scratch—just drop in a community block. This dramatically reduces development costs and accelerates feature releases.

Unlocking the Power of Reusable Web Blocks: A New Open Standard
Source: www.joelonsoftware.com

For End-Users

Users enjoy a richer editing experience. They can choose from a vast marketplace of blocks, from simple to advanced, without waiting for their editor’s vendor to add support. Blocks become portable: create a custom data table in one app and embed it in another.

For Block Creators

Developers who build blocks can reach every major editor with a single implementation. This incentivizes the creation of polished, reusable components—much like how JavaScript libraries thrive on npm.

What Can Be a Block?

Almost anything that fits in a document or on a webpage. Examples include:

  • Standard text blocks (paragraphs, lists, headings)
  • Multimedia blocks (images, videos, audio players)
  • Interactive blocks (polls, quizzes, Kanban boards)
  • Data-driven blocks (charts, calendars, order forms)
  • Structured data blocks (typed entities like “Person” or “Product”)

The protocol is designed to handle both simple and complex blocks, because it separates content from behavior.

Getting Involved

We’re at the earliest stage—the draft specification is rough, but usable. You can help shape the Block Protocol by:

  • Reviewing the specification and providing feedback.
  • Building sample blocks using the protocol.
  • Integrating the protocol into your own editor.
  • Joining our community chat and discussing ideas.

All sample code is open-source, and the protocol itself is released under a permissive license. We believe that the future of content on the web is modular, reusable, and open. The Block Protocol is an important step toward that future.

Conclusion

The block paradigm has already transformed how we create and manage web content. But proprietary implementations hold it back. The Block Protocol breaks down those walls, making blocks truly interchangeable. By adopting this open standard, developers save time, users gain freedom, and the entire web ecosystem becomes more vibrant. Join us in making the web better—one block at a time.