A fork of Emacs that adds modern features like TypeScript/JavaScript support via Deno, GPU-accelerated rendering with WebRender, and improved async I/O.
emacs-ng is a fork of GNU Emacs that adds a native layer to integrate modern technologies while preserving Emacs' core philosophy. It introduces features like GPU-accelerated rendering via WebRender and JavaScript/TypeScript execution via the Deno runtime to improve performance and accessibility. The project aims to make Emacs more approachable and future-proof without replacing its Elisp foundation.
Emacs users and developers seeking modern performance enhancements, GPU-accelerated graphics, and the ability to use JavaScript/TypeScript within Emacs. It also targets those interested in experimenting with WebAssembly, asynchronous I/O, and parallel execution in an editor environment.
Developers choose emacs-ng for its additive approach that integrates cutting-edge technologies like WebRender and Deno while maintaining full compatibility with vanilla Emacs and Elisp. It offers unique performance gains through hardware acceleration, modern async I/O, and a rich JavaScript ecosystem, all within the familiar, introspectable Emacs environment.
A new approach to Emacs - Including TypeScript, Threading, Async I/O, and WebRender.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Integrates Mozilla's WebRender for hardware-accelerated 2D graphics, leveraging GPU hardware to improve visual performance and smoothness in the UI.
Embeds the Deno runtime to execute JavaScript and TypeScript within Emacs, bringing access to a vast ecosystem, async I/O with Tokio, and WebWorkers for parallelism.
Supports parallel execution via WebWorkers and async I/O using Rust's Tokio library, enabling better responsiveness for intensive tasks without external processes.
Allows compiling C modules to WebAssembly, simplifying distribution and customization without native library dependencies, as noted in the README's feature list.
The README explicitly warns that dynamic modules are unmaintained and Deno integration is outdated, leading to potential bugs, lack of updates, and reliability issues.
Adding layers like WebRender and Deno introduces dependencies on Rust, GPU drivers, and build tools, making installation more involved than standard Emacs.
As a fork, it risks having fewer community contributions and package compatibility issues compared to the widely supported GNU Emacs, limiting long-term support.
WebRender's GPU dependency can lead to higher resource usage or incompatibility on systems without suitable hardware, negating performance gains for some users.