Top
Best
New

Posted by indy 11 hours ago

Wordgard: In-browser rich-text editor from the creator of ProseMirror(wordgard.net)
215 points | 81 commentspage 2
keepupnow 7 hours ago|
Why this over Lexical by Meta?
lewisjoe 5 hours ago||
The person who got inspired by prosemirror and built lexical is no more at meta. Go to the repository and you'll find it's already in maintenance mode. Its promise of cross platform extensible editor is unrealised yet.

I'd pick prosemirror any day over Lexical.

nicce 4 hours ago|||
Seems like the contribution graph is on the highest for long time: https://github.com/facebook/lexical/graphs/contributors?from...

But Claude is playing part of it.

keepupnow 4 hours ago|||
You are wrong, Lexical it is not in maintenance mode and continues to receive commits from contributors. 24k stars and counting.

https://github.com/facebook/lexical

jamwil 5 hours ago|||
Because Meta is a harmful company, for one.
keepupnow 4 hours ago||
Find a comparable editor then..

I'll save you the trouble, you will not find one.

52-6F-62 4 hours ago||
Because Meta is not the default to everything.

I've personally been hoping for something like this for a while now. Especially a toolset that is not just targeting yet another SaaS or LLM or social media clone interface.

I don't know if you ever used Draft.js that FB put out some time ago, but it was a horribly buggy monstrosity that was a heavy lift to move away from. One could not write several paragraphs and edit them without losing a lot of work. I wouldn't touch "Lexical" no matter the marketing they put on top. I wouldn't be half as critical if it wasn't one of the wealthiest companies on the planet known for injecting billions into black holes while they raid every area of your life they possibly can for data to be used to manipulate socio-political matters everywhere. If they're going to do that, and release open source libraries, then at least make them good enough to be seductive. They aren't.

ProseMirror and seemingly WordGard have real thought and care put into them by people who have long made the DOM/developer experience and the writing experience priorities– not just their "mind share" for whatever dark purposes drive companies like Meta.

benatkin 2 minutes ago|||
It's something to avoid for everything. They've gone further with nastiness than the other FAANGs IMO. Though alternatives may be hard to see, they exist, including for PyTorch. In many places it's zero sacrifice like with React.
keepupnow 2 hours ago|||
Have you made that conclusion after thorough examination of the open-source code base?
haroldadmin 9 hours ago||
ProseMirror is an excellent project, but it’s always been a bit awkward using it directly in React. I remember that NYT had to rewrite the renderer to make it work for their use-case.

I wonder how Wordgard compares in this aspect!

exceptione 9 hours ago||
For people who have dealt with react, this part might give some insight into that topic (https://wordgard.net/docs/prosemirror/#h-transactions-and-ch...)? Nevertheless, it would be good if this could be addressed in the docs.

I am not sure if this makes things easier for react interop, but this piece might be of interest too:

  > One of the biggest mistake blunders in ProseMirror is that the editor view does not get access to the transaction objects when updating, just the state. Wordgard does not repeat this mistake, and makes updates take transactions, not just a new state.

  > This means that things like the DOM update logic and UI plugins can precisely observe what happened, and handle changes in a efficient and more effective way. The weird unexpected DOM redraws that are still a thing in ProseMirror should not occur. Only the precise DOM structure affected by the new transactions will be updated.


Anyways, it is great to see Merijn still going strong with his free work. Anyone needing interactive rich text on the web won't find anything better than his brain childs.
tefkah 8 hours ago|||
The people developing that left NYT and spun it out into a separate (really great!) project https://github.com/handlewithcarecollective/react-prosemirro...

They are also working on a collaborative editing suite for ProseMirror as an alternative to TipTap https://pitter-patter.dev/

alserio 9 hours ago||
That's due to the React constraints, though
yard2010 4 hours ago||
Can you please elaborate? What constraints exactly?
nicce 8 hours ago||
I would be curios that what are the cons/pros for selecting this over Facebook's Lexical (https://github.com/facebook/lexical)
keepupnow 7 hours ago|
My exact comment, Lexical is very powerful and needs little dependencies.
low_tech_punk 6 hours ago||
I believe Wardgard has zero external dependencies. The three packages it depends on are all utils written by the author himself.

https://code.haverbeke.berlin/wordgard/wordgard/src/branch/m...

yodon 9 hours ago||
The code appears to be unavailable. This includes not just wordgard but all the ProseMirror code as well.

If the motivation for moving off GitHub was "GH is down too much", it might be worth tracking how many 9's of uptime is lost in the self-hosted case.

marijn 5 hours ago||
I've had another report like this (they claimed it had been down for days). But I haven't noticed anything wrong with it (and I'm using it a lot). What did 'down' look like?

Also, though GitHub's lack of reliability was part of the motivation to self-host, it was only a minor factor. The way they are trying to make Copilot a thing, at the cost of everything else, the way they handle US sanctions by blocking everybody from entire countries, and the way the web interface feels ever more heavyweight and sloppy were also factors.

jitl 7 hours ago|||
Works for me:

    $ git clone https://code.haverbeke.berlin/wordgard/wordgard.git
    Cloning into 'wordgard'...
    remote: Enumerating objects: 8274, done.
    remote: Counting objects: 100% (8274/8274), done.
    remote: Compressing objects: 100% (4747/4747), done.
    remote: Total 8274 (delta 6049), reused 5002 (delta 3464), pack-reused 0 (from 0)
    Receiving objects: 100% (8274/8274), 1.61 MiB | 2.93 MiB/s, done.
    Resolving deltas: 100% (6049/6049), done.
nmstoker 8 hours ago||
Were you meaning it was unavailable temporarily?

Maybe something changed in the meantime, but I'm seeing what appears to be the code for it here: https://code.haverbeke.berlin/wordgard/wordgard/src/branch/m...

milkshakeyeah 9 hours ago||
I can’t believe that we are still trying to solve this. One would think that after so many years (I’ve started doing web almost 20 years ago) we would end up with some solutions baked in browsers
nicce 8 hours ago||
I think the issue is not the "solving", rather that people have different opinions and they want different things, and there isn't common agreement what is needed or how. Most editors work just fine for the basic needs. But well, that is my opinion.
yoz-y 8 hours ago||
Something like showcontrols for contenteditable with flags for features
low_tech_punk 6 hours ago||
If you click on the "create link" button multiple times, the menu would pile up vertically.
marijn 6 hours ago|
See https://code.haverbeke.berlin/wordgard/wordgard/commit/9c9b2...
ang_cire 3 hours ago||
:q!
whalesalad 6 hours ago||
I love this art style. It's like if textpattern wasn't depressed.
chrisjj 9 hours ago||
How do I get text labels on the buttons?
marijn 6 hours ago|
The menu can be replaced, either entirely or by item, but the default buttons use icons, not text labels.
chrisjj 9 hours ago|
At Try, I entered x and tapped what I presume is Undo. No effect.

Android Chrome.

aniviacat 4 hours ago||
I ran into some issues on Firefox Android.

I wanted to clear the text box, so I marked the entire text and hit backspace. It only removes the last letter.

So then I marked the entire text and pressed a letter. That successfully replaced all the text with the one letter.

But then the editor broke completely. I cannot put newlines anymore, backspace is inconsistent, and the text cursor isn't shown.

(The editor breaking after marking all the text and pressing a letter is reproducible.)

At least on mobile the editor seems to still be unstable.

marijn 4 hours ago||
(Filed this [here](https://code.haverbeke.berlin/wordgard/wordgard/issues/3).)
marijn 6 hours ago||
Tried to reproduce this, also on Chrome Android, but undo removes the typed character as expected.
More comments...