Hackable. Fast. Yours.
A modernized fork of Atom, the hackable text editor — resurrected and rebuilt on a current version of Electron.
Named after the Stargate dialing mechanism: each chevron locks in a step toward a working connection. Fitting for a project that's rebuilding Atom's internals one architectural piece at a time.
Atom was officially sunset by GitHub in December 2022 and hasn't received updates since. It shipped on Electron 11, which is years out of date, unsupported, and increasingly incompatible with modern Node.js, V8, and OS-level APIs.
Rather than a from-scratch rewrite, Chevron takes the harder — and more educational — path: bring Atom's existing codebase forward through modern Electron versions, one breaking change at a time.
0.6.0 — Electron best-practices hardening complete for its terminal goals (protocol/IPC allowlists, CSP, default-on community require restrict, strict FS IPC, fuses). cpm + Pulsar registry, multi-platform CI, Security Phase N done. Next track: Phase S prep (natives / editor sandbox).
Still early: great for building from source and dogfooding; not a polished daily-driver release yet.
| Track | Notes |
|---|---|
| Electron | 43.1.0 |
| Bundle ID | dev.builtbygio.chevron |
| Package API | Dual-support forever (atom://, global.atom, engines.atom) |
| Package manager | cpm (Electron-as-Node); apm is a long-lived shim → cpm |
| Registry | Pulsar by default (CPM_REGISTRY_URL override) |
| Config home | ~/.atom by default; CHEVRON_HOME / ~/.chevron supported |
| Security | BP plan closed — see docs/electron-best-practices-plan.md, docs/security-threat-model.md |
See CHANGELOG.md and docs/REBRANDING.md.
- Migrate off deprecated
remotemodule usage (IPC path) - Rearchitect IPC to work under
contextIsolation: true - Clean multi-platform builds on current Electron
- Chevron branding (icons, shell, package identity)
- Further first-run / onboarding polish — see docs/onboarding-polish.md
- Modern package manager path — Phase 0–4 complete (
cpm; see docs/cpm-design.md, docs/cpm-cutover.md);apmremains as a cpm shim - Security Phase N + Electron best-practices shippable scope (docs/security-phase-n.md, docs/electron-best-practices-plan.md)
- Phase S: editor sandbox after natives migration
- A ground-up rewrite — this is a modernization effort, not a new editor
- Feature parity with VS Code or other modern editors
- Dropping Atom package compatibility
Chevron is a modernized fork of Atom, maintained in the open. The goal is not a
from-scratch editor, but a careful forward-port: current Electron, multi-platform
builds, dual-support for the Atom package ecosystem, and a security-minded IPC
model (contextIsolation, no remote).
That path is deliberate. Treating process boundaries, packaging, and native modules as first-class problems keeps the codebase honest about what still works and what is still early — without pretending a dependency bump is the whole job.
Built using a branch → PR → merge workflow, even solo.
Host toolchain: Node 24 + Python 3.12 (+ setuptools). Always use ./script/bootstrap-modern (not stock ./script/bootstrap).
git clone https://github.com/builtbygio/chevron.git
cd chevron
./script/bootstrap-modern
./script/with-modern-env ./script/build --no-bootstrap
# macOS: out/Chevron.app (native Intel or Apple Silicon)
# Linux: --create-debian-package --create-rpm-package --compress-artifacts
# smoke: xvfb-run -a node script/ci/smoke-test.js
# Windows (Git Bash): same bootstrap/build; smoke: node script/ci/smoke-test.jsPlatform guides:
- Linux —
.deb/.rpm/ tarball, CI jobs - macOS — Intel + Apple Silicon CI
- Windows — VS 2022, zip artifact, CI job
Atom was released under the MIT License. This fork retains that license — see LICENSE.md.
Built on the work of the original Atom team and community. Pulsar is the active community-maintained Atom fork focused on immediate usability — worth a look if you want a maintained daily driver today rather than a from-source modernization project.