Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Atom API 1.0 is Stable

Atom API 1.0 is Stable

This item in japanese

Lire ce contenu en français

The Atom’s team has announced a pre-release but stable version of the editor’s API.

Although in pre-release form, the Atom Core API 1.0 is stable and won’t suffer any breaking changes unless the team behind it “finds a serious bug.” Until the final version, there are a few small issues to solve and the performance needs to be improved. Developers that have written packages based on an earlier API need to read the transitioning guide to see what APIs have been deprecated or changed.

After 1.0 there won’t be any breaking changes at least until the next major version, 2.0. The packages coming with Atom are versioned separately and their API may change, but the team does not consider this a problem because the “API surface area … is tiny compared to the core API.” According to the release notes, code directly accessing the DOM will be impacted when the next version will arrive:

2.0 will likely focus on solidifying Atom's style guide and more tightly codifying the DOM as an official part of our API. Until then, we'll avoid additional disruptions to DOM structure as far as styling is concerned. As a rule, programmatic DOM manipulation should not be considered part of the stable API at this time. If you mutate the DOM directly, be prepared to update your package when things change.

The Atom API comes with 15 Essential Classes including Atom, Color, Config, TextEditor, Workspace, and 23 Extended Classes, such as Clipboard, Cursor, File, Project, Task, ThemeManager, etc.. The API documentation is generated off the GitHub source code.

The Atom editor has evolved after being open sourced in May of last year, the community having written over 1,400 packages for it and having access to over 100,000 Node.js packages. The IDE is modular supporting new languages added as packages. Because of that, the community has been able to expand its support from the initial JavaScript to hundreds of languages, including C, Go, HTML, Java, JSON, Perl, PHP, Rust, SQL, XML. Although a date was not specified, Atom 1.0 is to be expected by summer after some features have been added and performance issues fixed.

Rate this Article