withExEditorHost
text-unicode
withExEditorHost | text-unicode | |
---|---|---|
1 | 2 | |
33 | 69 | |
- | - | |
7.5 | 0.0 | |
12 days ago | about 2 years ago | |
JavaScript | TypeScript | |
MIT License | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
withExEditorHost
-
Ace, CodeMirror, and Monaco: A Comparison of the Code Editors You Use in Browser
I prefer using a local editor using the withExEditor browser extension:
https://github.com/asamuzaK/withExEditorHost
text-unicode
-
Ace, CodeMirror, and Monaco: A Comparison of the Code Editors You Use in Browser
We had to handroll our own OT implementation inhouse (based on https://github.com/ottypes/text-unicode) since we had built the system for it already. I suspect we would've used or forked CodeMirror's collab package if we were starting today.
Also huge fan of yjs, but the implementation is not compatible with codemirror 6, only version 5 (AFAIK)
-
Accidentally quadratic: When Python is faster than C++
Well said.
I've had a lot of conversations with javascript engineers over the years who've argued to me that well tuned JS will be nearly as fast as the equivalent C code. I've written plenty of little toy benchmarks over the years, and in my experience they're partly right. Well written JS code in V8 can certainly run fast - sometimes around half the speed of C code. But a massive performance gap opens up when you use nontrivial data structures. Nested fields, non-uniform arrays, trees, and so on will all cripple javascript's performance when compared to C's equivalent of simply embedding nested structs. If you couple clean C data structures with allocation-free hot paths from arenas, the performance of C will easily hit 10-20x the performance of the equivalent JS code.
From memory my plain text based operational transform code does ~800k transforms / second in javascript. The equivalent C code does 20M/second. The C implementation is about twice as many lines of code as the JS version though.
(The code in question: https://github.com/ottypes/text-unicode/blob/master/lib/type... / https://github.com/ottypes/libot )
What are some alternatives?
y-codemirror.next - Collaborative extensions for CodeMirror6
rapidyaml - Rapid YAML - a library to parse and emit YAML, and do it fast.
codejar - An embeddable code editor for the browser 🍯
codemirror-emacs - Emacs keybindings for CM6
phonk - PHONK is a coding playground for new and old Android devices
JitFromScratch - Example project from my talks in the LLVM Social Berlin and C++ User Group
flang - Flang is a Fortran language front-end designed for integration with LLVM.
esbuild - An extremely fast bundler for the web
Code-Server - VS Code in the browser
codemirror-vim - Vim keybindings for CM6