codejar
text-unicode
Our great sponsors
codejar | text-unicode | |
---|---|---|
5 | 2 | |
1,698 | 69 | |
- | - | |
6.5 | 0.0 | |
4 months ago | about 2 years ago | |
TypeScript | 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.
codejar
- CodeJar – A Code Editor for the Web
- [AskJS] What code formatter/beautifier are you using in the browser?
-
Ace, CodeMirror, and Monaco: A Comparison of the Code Editors You Use in Browser
FYI, this is a few months old, if you want to read something up to date, check out https://blog.replit.com/codemirror
Unfortunately copy and paste doesn't work well on Firefox on Linux in any of these fancy editors because support for the primary selection is broken and Mozilla doesn't seem interested in fixing it: https://bugzilla.mozilla.org/show_bug.cgi?id=1593761
The article calls CodeMirror "lightweight" but the minified JS is still over 1 MB. If you want lightweight then you probably want something like CodeJar (https://github.com/antonmedv/codejar) which clocks in at 2 kB.
-
Wren Playground
CodeJar
- CodeJar
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?
PrismJS - Lightweight, robust, elegant syntax highlighting.
rapidyaml - Rapid YAML - a library to parse and emit YAML, and do it fast.
react-ace - React Ace Component
codemirror-emacs - Emacs keybindings for CM6
y-codemirror - Yjs CodeMirror Binding
JitFromScratch - Example project from my talks in the LLVM Social Berlin and C++ User Group
electron-react-boilerplate - A Foundation for Scalable Cross-Platform Apps
flang - Flang is a Fortran language front-end designed for integration with LLVM.
codemirror-vim - Vim keybindings for CM6
esbuild - An extremely fast bundler for the web
phonk - PHONK is a coding playground for new and old Android devices
Code-Server - VS Code in the browser