Live data from Hacker News

Show HN: Bangle.dev – Collection of tools for building rich text editors

github.com

21–28 of 28 posts

Re: Show HN: Bangle.dev – Collection of tools for building rich text editors

#22
post #19

How would this compare to say a pre-made solution like Trix ( https://github.com/basecamp/trix ) from Basecamp?

This looks really good. I've been looking for a simple rich text editor like this. I will definitely download it and give it a try :-D

Re: Show HN: Bangle.dev – Collection of tools for building rich text editors

#24
I really hate all these "fancy editor in the browser". They're all really awful (slack's being the worst) and do not work well with edit-in-your-favorite-editor plugins like Firenvim or GhostText.

I'll prefer simple textareas that accept markdown everytime.

Re: Show HN: Bangle.dev – Collection of tools for building rich text editors

#25

Earlier quoted context omitted.

How does it compare to https://github.com/remirror/remirror ?

I have been following remirror since the start and also started working on bangle.dev at the same time. bangle.dev aims to add little API overhead on top of Prosemirror (PM) whereas Remirror tries really hard to hide the PM API and attempts to provide its own React-ish abstraction. This might be a totally fine choice, but I went with the route of building reusable components instead of abstractions.

I'm glad to hear this! Using Remirror worries me because it injects an abstraction between our code and PM.

However, when I look at your docs, it's not clear it's a different in approach from Remirror. The imports are all from bangle.dev which makes it seem like the same approach.

I would love to see a doc explaining the "API overhead" and how to use PM directly. I want to feel confident I can easily drop back down to PM if Bangle doesn't have a feature I need or implements it in a way that won't work for our use case.

Really excited to see this approach! Shared PM plugins are a great idea!

Re: Show HN: Bangle.dev – Collection of tools for building rich text editors

#26
post #7
post #2

This looks cool! What would be the biggest motivation for using this over something like slateJS?

slate.js is react-only iirc, although I believe someone made a draft pr to make it work outside of it.

There is a fork (rewrite) in the Vue.js [0].

[0]: https://github.com/marsprince/slate-vue

Re: Show HN: Bangle.dev – Collection of tools for building rich text editors

#27
post #2

This looks cool! What would be the biggest motivation for using this over something like slateJS?

I tried to use slateJS initially, but I found the project to be slow (it was using ImmutableJS back then) and even though it claims it can support collaboration, it doesn't actually support it which is a deal breaker for me.

Slate.js, even after change to Immer is slow. IMHO (as a person who actively observes the development, sometimes participate in their Slack) the "performance" is not taken seriously in this project. In last few months they provided few PRs that improved few cases, while breaking others. I am impressed how many projects are using it [0], because it has problems to handle editing and pasting huge documents. I also see many PRs from community focusing on optimization but they are ignored, stalled or prematurely closed. It also does not handle IME properly, which is a major problem for many languages. However, I see maintainers started to be more active, so all problems I have mentioned might be fixed soon.

[0] For example Kitemaker https://blog.kitemaker.co/building-a-rich-text-editor-in-rea... (AFAIK they use v0.47).

[1] Edit: TinyMCE team is focused to build their editor based on Slate - https://www.tiny.cloud/blog/real-time-collaborative-editing-...

Re: Show HN: Bangle.dev – Collection of tools for building rich text editors

#28

Earlier quoted context omitted.

How does it compare to https://github.com/remirror/remirror ?

I have been following remirror since the start and also started working on bangle.dev at the same time. bangle.dev aims to add little API overhead on top of Prosemirror (PM) whereas Remirror tries really hard to hide the PM API and attempts to provide its own React-ish abstraction. This might be a totally fine choice, but I went with the route of building reusable components instead of abstractions.

How easy is integration between the two frameworks?
Post reply on HN