Study the source code to understand how to build an Electron app backed by a Rust process for high performance.
Research the keystroke-level change-tracking architecture of the Memo sub-project for building collaborative editing tools.
Browse the design goals and timing targets the team set for typing latency, scrolling, and file-open performance.
Project is archived and no longer maintained, there is no install path and no working build target for current systems.
Xray was an experimental text editor built by the team behind the Atom editor at GitHub. The goal was to test radical ideas about how a code editor could work, without risking the stability of Atom itself. GitHub ultimately decided not to move the project forward, so the repository is archived. No active development is expected. The editor was built on Electron, the same technology that powers VS Code and Atom, but with a key difference: all the core application logic was written in Rust rather than JavaScript. The idea was that Rust runs faster by default, handles multiple tasks in parallel more naturally, and keeps memory usage low even on large projects. The visible interface would still use web technologies, but the heavy lifting would happen in a separate Rust process that the UI communicated with over a message-passing system. Four design goals shaped the project. First, collaboration: the editor was designed from the start for multiple people to work in the same file at the same time, with the interface built to show multiple cursors and the file system abstracted so it could work over a network. Second, performance: the team set specific timing targets for how quickly the editor needed to respond to typing, scrolling, and file opening. Third, extensibility: developers would be able to add significant features through a package system, with packages running on separate threads so a broken package could not slow down the whole editor. Fourth, web compatibility: the plan included a version that could run entirely inside a browser, making it usable on GitHub.com directly. A sub-project called Memo was under active development in 2018. It was designed as a version control system that tracked changes at the individual keystroke level and could synchronize changes between collaborators in real time, operating independently of the editor itself. Because the project is archived, there is nothing to install or run. The code remains public for reference.
← atom-archive on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.