Live data from Hacker News

BlockSuite: An open-source Notion-like editor with multiplayer support

blocksuite.affine.pro

21–30 of 105 posts

Re: BlockSuite: An open-source Notion-like editor with multiplayer support

#22
post #15

Does anyone else feel that the whole entire-canvas-is-editable-by-default approach of Notion and similar tools is an extremely annoying antipattern? I want to be able to open a document in read-only mode. Otherwise, while just navigating through pages or reading content, it's far too easy to accidentally add text to a block by pressing anything on the keyboard, or move things around with an accidental drag of the mou…

If the company doesn’t want you editing pages, they should be locking them down. If the pages are left open I feel that it is safe to assume the right to edit. And I’d argue that until my boss absolutely hated me. https://www.notion.so/help/sharing-and-permissions

It's totally reasonable for an FAQ page that is editable by all developers and intended for everyone to contribute troubleshooting tips.

The problem occurs when someone accidentally drags things around, or has the wrong window open when typing in text and you end up with "ls" and "exit" scattered randomly throughout the doc.

Re: BlockSuite: An open-source Notion-like editor with multiplayer support

#23

Does anyone else feel that the whole entire-canvas-is-editable-by-default approach of Notion and similar tools is an extremely annoying antipattern? I want to be able to open a document in read-only mode. Otherwise, while just navigating through pages or reading content, it's far too easy to accidentally add text to a block by pressing anything on the keyboard, or move things around with an accidental drag of the mou…

No, it's an editor, not a immutable website for consumption. The whole goal of them is that you can switch fast between editing and the rendered result. In that sense they are like word processors. But yes, adding an option for locking the document can be important, and usually they have them. I mean it's not even hard to implement. But probably not something people are mindful about.

I mean, an immutable website for consumption is exactly what most people want. I want to differentiate content editing and content viewing much the same way in software development you edit source code which is then built into an immutable read-only artifact.

Is it really such a foreign concept that people want a dedicated editing-focused mode whose source is published into the final wiki page for viewing? Is this not how basically all tools worked pre-Notion?

Re: BlockSuite: An open-source Notion-like editor with multiplayer support

#24
post #7
post #3

Looks pretty cool. I noticed a few issues when playing with the Playground like if you do a slash command and select one of the items such as entering "to" and then selecting "Today" it shows the date with "to" as the prefix. Overall a cool project though!

For me, the issue on the playground is that neither backspace nor delete did anything. That seems like either a severe bug or limitation.

Same for me on Firefox, though Chromium and Safari seem to work

Re: BlockSuite: An open-source Notion-like editor with multiplayer support

#25
The approach here is a bit novel i.e treat each block as a separate editor instance (contenteditable) and somehow wire-up cursor movements to behave as if it's one big editable area.

But it comes with its downsides as well. For example cross block selection doesn't work.

If the entire page is one big editable area, then it becomes difficult to embed complex blocks like "kanban views" and calendar.

I guess we should think beyond contenteditable at this point and separate rendering layer from input layer[1] - sort of like how Google Docs has built its editor.

But writing a rich text editor is not just a text-editing problem. It essentially needs you to build a layout engine itself (like webkit) that knows how/when to recalculate and draw the affected parts (render objects) when the rich-text changes. Why? because baking in tables and image-wraps and other complex resizable blocks affect other elements around/after it.

Bottomline: we need a custom built layout engine + text renderer + input handler(that respects accessiblity) + selection handler to build an absolutely powerful rich-text editor. I'd like to start a open source project in this direction.

[1] https://twitter.com/jitl/status/1649761057953415174

Re: BlockSuite: An open-source Notion-like editor with multiplayer support

#26

Earlier quoted context omitted.

No, it's an editor, not a immutable website for consumption. The whole goal of them is that you can switch fast between editing and the rendered result. In that sense they are like word processors. But yes, adding an option for locking the document can be important, and usually they have them. I mean it's not even hard to implement. But probably not something people are mindful about.

I mean, an immutable website for consumption is exactly what most people want. I want to differentiate content editing and content viewing much the same way in software development you edit source code which is then built into an immutable read-only artifact . Is it really such a foreign concept that people want a dedicated editing-focused mode whose source is published into the final wiki page for viewing? Is this n…

> I mean, an immutable website for consumption is exactly what most people want.

Do they? Then export your documents to an immutable website. That's why those options exist. Personally I don't want that. I want to edit my content fast and the hybrid-solution doesn't bother me. So we are talking here about a conflict of interest, not an anti-pattern. And solutions for this already exist, maybe they should just advertised more prominently?

> I want to differentiate content editing and content viewing much the same way in software development you edit source code which is then built into an immutable read-only artifact.

I don't read the compiled artifact, I use it, which is very different from what we are talking here. A more equal example would be reading code on github or reading in a code editor.

Re: BlockSuite: An open-source Notion-like editor with multiplayer support

#27

> BlockSuite (pronounced "block sweet" ) Is there any other way that "BlockSuite" would be pronounced?

Many words are pronounced in a skewed way in non-native english speaking demographics. I've heard almost everyone I meet saying Software-'Soot' instead of 'sweet', 'Adobee' as 'Adob', 'Orcut' as 'Orcoot', and 'alarm' as 'alaram'. When I asked them if it does not come out the way it is supposed to be when they are reading it, it actually 'didn't sounded like that in our head.'

I'm from India. I went to a school (started by a British-Indian family) where the students speaks so many dialects, that English was the only common denominator and I remember a lot of emphasis was given on pronunciation and the like. Getting the right lyrics of English western songs was one of the common pastime.

Re: BlockSuite: An open-source Notion-like editor with multiplayer support

#28
Sorry for the off-topic question: what is the editor used to create these type of sketches? I see it everywhere recently and I've even used it myself but can't remember the name.

https://blocksuite.affine.pro/assets/block-based-editing.57b...

Re: BlockSuite: An open-source Notion-like editor with multiplayer support

#29

Sorry for the off-topic question: what is the editor used to create these type of sketches? I see it everywhere recently and I've even used it myself but can't remember the name. https://blocksuite.affine.pro/assets/block-based-editing.57b...

https://excalidraw.com/

Re: BlockSuite: An open-source Notion-like editor with multiplayer support

#30

Earlier quoted context omitted.

> Multiplayer? Is this a game? Many document editors describe the “collaborative Google-docs like model” of multiple people working on the same document and seeing everyone’s updates in real time as “multiplayer”

First time I see this as far as I'm aware. Usually it's collaborative editing. Bit misleading.

The term has been around for a while.

I think there's a subtle distinction between "collaborative editing" and "multi-player". With the latter normally implying that there are real-time visual cues as to where the other users are, what they are doing, distinguishing styles, etc. More like what you get from a game. Within front-end it seems to be well understood.

Post reply on HN