I think the OP is kinda off the mark. The next step for web editor abstractions is not implementing layout engines so we can render page breaks correctly. It’s a library that separates handling input from rendering output. The biggest constricting factor with ContentEditable is that your rendered view also dictates how your input works. We need a library that handles all the user interaction and accessible, localized text input flawlessly but invisibly while integrating well with the OS. If we have that, developers can build their layout system on top or just use DOM layout without worrying about their DOM structure being compatible with ContentEditable input quirks across all the browsers, or their HTML changing in random ways under their feet.
There are a lot of problems with doing a hidden ContentEditable for input, which is what Google Docs does. Last time I looked, the input / focused DOM element was actually hidden inside the blinking caret. But that strategy is clumsy with assistive technology because the accessible bits don’t “line up” with the actual UI drawn to the screen. It also breaks some system conventions like smooth cursor movement when holding spacebar on iOS’s keyboard. You can try it in Google Docs and see what I mean.
Those kinds of issues are actually why Lexical (FB’s new text editor toolkit) doesn’t use hidden input according to Lexical’s author trueadm on Twitter (can’t find my citation). Those same issues also make us hesitate to move that direction in Notion’s editor.
If you want to use a custom “layout engine” implemented on top of the DOM today, you can use Skia CanvasKit (https://skia.org/docs/user/modules/quickstart/) or Flutter Web which is based on Skia. Although CanvasKit is kinda slow and text looks bad on iOS.
So what the heck has happened with LK-99 really? (Disclaimer: I'm no physicist nor chemist, but I have co-written a report on three LK-99 papers [1] and am tracking the Twitter discussion as much as I can. I also got some help from knowledgable friends---much thanks for proof-reading.)
It turned out that LK folks were not talking about some stupid shit. Specifically they were one of the last believers of long-forgotten Russian theory of superconductivity, pioneered by Nikolay Bogolyubov. The accepted theory is entirely based on Cooper pairs, but this theory suggests that a sufficient constraint on electrons may allow superconductivity without actual Cooper pairs. This requires carefully positioned point defects in the crystalline structure, which contemporary scientists consider unlikely and such mode of SC was never formally categorized unlike type-I and type-II SC. Professor Tong-seek Chair (최동식) represented a regret about this status quo (in 90s, but still applies today) that this theory was largely forgotten without the proper assessment after the fall of USSR. It was also a very interesting twist that Iris Alexandria, "that Russian catgirl chemist", had an advisor who was a physicist-cum-biochemist studied this theory and as a result were so familiar with the theory that they were able to tell if replications follow the theoretical prediction.
Fast forward to today, students of the late Chair continued the research and produced a possible superconducting substance---LK-99---based on the Russian theory. A lot can be said about papers themselves, but it should be first noted that this substance is not a strict superconductor in the current theory. Prof. Chair once suggested that we need to trade off some (less desirable) properties of superconductors for room-temperature superconductivity, and that property seems to be isotropy. This particularly weakens the Meissner effect criterion due to the much reduced Eddy current, so there is a possibility that LK-99, even when it's real, might not be accepted as a superconductor in the traditional sense. LK folks on the other hand think they should be also considered a superconductor, but they are probably already aware of this possibility.
If we allow anisotropy in this discussion, we do have lots of such things already, most importantly carbon nanotubes. Scientists even thought about the possibility that they may function as typical superconductors [2], without any success though. So it might be appropriate to say that LK-99 is a substance that mimics them in one direction, but much more malleable. And that is an actually significant result (if true, of course) because for most uses a strict type-I superconductor is far more than sufficient, while implications of superconductivity are more achievable. We so far looked for strict superconductors only because we didn't know the effective way to trigger superconductivity otherwise; LK-99 might change that situation.
This whole discourse should make you more careful to conclude whether LK-99 is a superconductor or not, because we may well end up with a revised definition of SC as a result. If LK-99 makes superconductivity much easier to trigger it should be considered a superconductor in the macroscopic sense, authors would argue. Only the time will tell if they indeed made such a substance and it would be malleable enough to be substitutes for other superconductors, but they have a long history and arguably received unfair treatments. And they are about to fight back.
There are a lot of problems with doing a hidden ContentEditable for input, which is what Google Docs does. Last time I looked, the input / focused DOM element was actually hidden inside the blinking caret. But that strategy is clumsy with assistive technology because the accessible bits don’t “line up” with the actual UI drawn to the screen. It also breaks some system conventions like smooth cursor movement when holding spacebar on iOS’s keyboard. You can try it in Google Docs and see what I mean.
Those kinds of issues are actually why Lexical (FB’s new text editor toolkit) doesn’t use hidden input according to Lexical’s author trueadm on Twitter (can’t find my citation). Those same issues also make us hesitate to move that direction in Notion’s editor.
If you want to use a custom “layout engine” implemented on top of the DOM today, you can use Skia CanvasKit (https://skia.org/docs/user/modules/quickstart/) or Flutter Web which is based on Skia. Although CanvasKit is kinda slow and text looks bad on iOS.