Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Why Block? #150

Closed
linzhefeng opened this issue Mar 23, 2023 · 1 comment
Closed

Why Block? #150

linzhefeng opened this issue Mar 23, 2023 · 1 comment

Comments

@linzhefeng
Copy link

Hello! I am very interested in editors and Blocknote, and I would love to learn more about the design philosophy behind Blocknote. I am particularly curious about the importance of the "block" concept and its indispensable role.

As an example, let's say I want to add color to some content. Without the "block" concept, I could potentially set the color directly on the parent element and achieve the same effect. However, I am interested in learning why the "block" concept is considered important and what benefits it provides in terms of design and functionality.

@YousefED
Copy link
Collaborator

@linzhefeng part of this is described here: https://www.blocknotejs.org/docs/introduction

And there are some more reasons I can think of:

  • Programmability: The Block-structure helps with programmability. Without Blocks, interfacing with the document from code is quite difficult, because there’s no clear schema. BlockNote makes this a lot easier (see https://www.blocknotejs.org/docs/blocks)
  • Encourage nice structure for users: In non-block editors, users can create quite messy documents. BlockNote’s clear block-based structure encourages well-structured, clean and “semantic” documents.
  • Modern UX: It's also a UX decision. Modern products like Notion, Coda, Microsoft Loop are setting a new standard for what users expect from modern text editors with blocks. With blocks, we can add easy dragging, but potentially also features like sharing blocks across documents, etc.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants