Atom (text editor)

Last updated
Atom
Developer(s) GitHub (subsidiary of Microsoft) [1]
Initial releaseFebruary 26, 2014;10 years ago (2014-02-26) [2]
Final release
1.60.0 [3]   OOjs UI icon edit-ltr-progressive.svg / 8 March 2022
Preview release
1.61.0-beta0 [4]   OOjs UI icon edit-ltr-progressive.svg / 8 March 2022
Repository
Written in CoffeeScript, JavaScript, Less, HTML (front-end/UI)
Operating system macOS 10.9 or later, Windows 7 and later, and Linux [5]
Size 87–180 MB
Available inEnglish
Type Source-code editor
License MIT License (free software) [6] [7]
Website atom.io   OOjs UI icon edit-ltr-progressive.svg

Atom is a free and open-source text and source-code editor for macOS, Linux, and Windows with support for plug-ins written in JavaScript, and embedded Git control. Developed by GitHub, Atom was released on June 25, 2015. [8]

Contents

On June 8, 2022, GitHub announced Atom's end-of-life, occurring on December 15 of the same year, justifying its need "to prioritize technologies that enable the future of software development", specifically its GitHub Codespaces and Visual Studio Code, developed by Microsoft which had acquired GitHub in 2018. [9] [10]

Features

Atom is a "hackable" text editor, which means it is customizable using HTML, CSS, and JavaScript. [11]

Atom is a desktop application built using web technologies. [12] It is based on the Electron framework, which was developed for that purpose, and hence was formerly called Atom Shell. [13] Electron is a framework that enables cross-platform desktop applications using Chromium and Node.js. [14] [15]

Atom was initially written in CoffeeScript and Less, but much of it was converted to JavaScript. [16]

Atom uses Tree-sitter to provide syntax highlighting for multiple programming languages and file formats. [17]

Packages

Like most other configurable text editors, Atom enabled users to install third-party packages and themes to customize the features and looks of the editor. Packages could be installed, managed and published via Atom's package manager apm. All types of packages, including but not limited to: Syntactic highlighting support for languages other than the default, debuggers, etc. could have been installed via apm. [ citation needed ]

History

Atom was developed in 2008 by GitHub founder Chris Wanstrath as a text editor using the Electron Framework (originally called Atom Shell), a framework designed as the base for Atom. [18]

Between May 2015 and December 2018, [19] Facebook developed Nuclide [20] and Atom IDE projects to turn Atom into an integrated development environment (IDE). [21] [22] [23] [24]

In 2018 when Microsoft announced they would be acquiring GitHub, users expressed concern that Microsoft might discontinue Atom, as it competed with Microsoft's Visual Studio Code. The future GitHub CEO assured users that development and support for Atom would continue. [25] However, within four years, development ceased. On June 8, 2022, GitHub announced shutdown of Atom development and archival of all development repositories of Atom by December 15, 2022. [9]

A former developer on Atom, Nathan Sobo, announced that he was building the "spiritual successor" to Atom, titled Zed. [26] [27] [28] Unlike Atom, Zed would be written in Rust and not use the Electron framework. [29]

On January 30, 2023, GitHub announced a breach which exposed "a set of encrypted code signing certificates" some of which were used to sign Atom releases. GitHub advised users to downgrade to earlier versions of Atom signed with a different key. [30]

Following Atom's end-of-life, development continued on a community fork named Pulsar. [31]

License

Atom was made fully open source in May 2014 under the MIT License, including its desktop framework Electron. [32]

Privacy concerns

There was initially concern and discussion about two opt-out packages that report various data to external servers. [33] [34] [35] [36] [37] However, those packages became opt-in with a verbose dialog during the initial launch: [38]

See also

Related Research Articles

<span class="mw-page-title-main">KDevelop</span> Integrated development environment

KDevelop is a free and open-source integrated development environment (IDE) for Unix-like computer operating systems and Windows. It provides editing, navigation and debugging features for several programming languages, and integration with build automation and version-control systems, using a plugin-based architecture.

<span class="mw-page-title-main">Eclipse (software)</span> Software development environment

Eclipse is an integrated development environment (IDE) used in computer programming. It contains a base workspace and an extensible plug-in system for customizing the environment. It is the second-most-popular IDE for Java development, and, until 2016, was the most popular. Eclipse is written mostly in Java and its primary use is for developing Java applications, but it may also be used to develop applications in other programming languages via plug-ins, including Ada, ABAP, C, C++, C#, Clojure, COBOL, D, Erlang, Fortran, Groovy, Haskell, JavaScript, Julia, Lasso, Lua, NATURAL, Perl, PHP, Prolog, Python, R, Ruby, Rust, Scala, and Scheme. It can also be used to develop documents with LaTeX and packages for the software Mathematica. Development environments include the Eclipse Java development tools (JDT) for Java and Scala, Eclipse CDT for C/C++, and Eclipse PDT for PHP, among others.

<span class="mw-page-title-main">Source-code editor</span> Text editor specializing in software code

A source-code editor is a text editor program designed specifically for editing source code of computer programs. It may be a standalone application or it may be built into an integrated development environment (IDE).

The following tables list notable software packages that are nominal IDEs; standalone tools such as source-code editors and GUI builders are not included. These IDEs are listed in alphabetic order of the supported language.

TypeScript is a free and open-source high-level programming language developed by Microsoft that adds static typing with optional type annotations to JavaScript. It is designed for the development of large applications and transpiles to JavaScript. Because TypeScript is a superset of JavaScript, all JavaScript programs are syntactically valid TypeScript, but they can fail to type-check for safety reasons.

<span class="mw-page-title-main">Geany</span> Integrated Development Environment

Geany is a free and open-source lightweight GUI text editor using Scintilla and GTK, including basic IDE features. It is designed to have short load times, with limited dependency on separate packages or external libraries on Linux. It has been ported to a wide range of operating systems, such as BSD, Linux, macOS, Solaris and Windows. The Windows port lacks an embedded terminal window; also missing from the Windows version are the external development tools present under Unix, unless installed separately by the user. Among the supported programming languages and markup languages are C, C++, C#, Java, JavaScript, PHP, HTML, LaTeX, CSS, Python, Perl, Ruby, Pascal, Haskell, Erlang, Vala and many others.

<span class="mw-page-title-main">GitHub</span> Hosting service for software projects

GitHub is a developer platform that allows developers to create, store, manage and share their code. It uses Git software, providing the distributed version control of Git plus access control, bug tracking, software feature requests, task management, continuous integration, and wikis for every project. Headquartered in California, it has been a subsidiary of Microsoft since 2018.

<span class="mw-page-title-main">Node.js</span> JavaScript runtime environment

Node.js is a cross-platform, open-source JavaScript runtime environment that can run on Windows, Linux, Unix, macOS, and more. Node.js runs on the V8 JavaScript engine, and executes JavaScript code outside a web browser.

<span class="mw-page-title-main">Cloud9 IDE</span> Online integrated development environment

Cloud9 IDE is an Online IDE, published as open source from version 2.0, until version 3.0. It supports multiple programming languages, including C, C++, PHP, Ruby, Perl, Python, JavaScript with Node.js, and Go.

<span class="mw-page-title-main">Brackets (text editor)</span> Editor for web development

Brackets is a source code editor with a primary focus on web development. Created by Adobe Inc., it is free and open-source software licensed under the MIT License, and is currently maintained on GitHub by open-source developers. It is written in JavaScript, HTML and CSS. Brackets is cross-platform, available for macOS, Windows, and most Linux distributions. The main purpose of Brackets is its live HTML, CSS and JavaScript editing functionality.

<span class="mw-page-title-main">Visual Studio Code</span> Source code editor developed by Microsoft

Visual Studio Code, also commonly referred to as VS Code, is a source-code editor developed by Microsoft for Windows, Linux and macOS. Features include support for debugging, syntax highlighting, intelligent code completion, snippets, code refactoring, and embedded version control with Git. Users can change the theme, keyboard shortcuts, preferences, and install extensions that add functionality.

<span class="mw-page-title-main">Electron (software framework)</span> Development framework built on Chromium

Electron is a free and open-source software framework developed and maintained by OpenJS Foundation. The framework is designed to create desktop applications using web technologies that are rendered using a version of the Chromium browser engine and a back end using the Node.js runtime environment. It also uses various APIs to enable functionality such as native integration with Node.js services and an inter-process communication module.

<span class="mw-page-title-main">Eclipse Che</span> Developer workspace server software

Eclipse Che is an open-source, Java-based developer workspace server and Online IDE. It includes a multi-user remote development platform. The workspace server comes with a flexible RESTful webservice. It also contains a SDK for creating plug-ins for languages, frameworks or tools. Eclipse Che is an Eclipse Cloud Development (ECD) top-level project, allowing contributions from the user community.

This is a timeline of GitHub, a web-based Git or version control repository and Internet hosting service.

<span class="mw-page-title-main">Chris Wanstrath</span> American technology entrepreneur and co-founder and former CEO of GitHub

Chris Wanstrath is an American technology entrepreneur and programmer. He is the founder of Null Games, and the co-founder and former CEO of GitHub, an Internet hosting service for software development and version control using Git. Wanstrath co-founded GitHub in 2008 and sold it to Microsoft in 2018. Before starting GitHub, he worked with CNET on GameSpot and Chowhound. In addition to GitHub, he created the Atom text editor, Ruby's Resque job queue, the Mustache templating language, and created the pjax JavaScript library. According to Forbes his net worth is estimated at US$1.8-2.2 billion and is listed in America's richest entrepreneurs under 40, as well as Fortune's 40 under 40 and he was named in CNBC's Disruptor 50 list.

<span class="mw-page-title-main">PureScript</span> Strongly-typed language that compiles to JavaScript

PureScript is a strongly-typed, purely-functional programming language that transpiles to JavaScript, C++11, Erlang, and Go. It can be used to develop web applications, server side apps, and also desktop applications with use of Electron or via C++11 and Go compilers with suitable libraries. Its syntax is mostly comparable to that of Haskell. In addition, it introduces row polymorphism and extensible records. Also, contrary to Haskell, the PureScript language is defined as having a strict evaluation strategy, although there are non-conforming back ends which implement a lazy evaluation strategy.

Microsoft, a technology company historically known for its opposition to the open source software paradigm, turned to embrace the approach in the 2010s. From the 1970s through 2000s under CEOs Bill Gates and Steve Ballmer, Microsoft viewed the community creation and sharing of communal code, later to be known as free and open source software, as a threat to its business, and both executives spoke negatively against it. In the 2010s, as the industry turned towards cloud, embedded, and mobile computing—technologies powered by open source advances—CEO Satya Nadella led Microsoft towards open source adoption although Microsoft's traditional Windows business continued to grow throughout this period generating revenues of 26.8 billion in the third quarter of 2018, while Microsoft's Azure cloud revenues nearly doubled.

<span class="mw-page-title-main">Tree-sitter (parser generator)</span> Parser generator and library

In computing, Tree-sitter is a parser generator and incremental parsing library.

References

  1. "Microsoft's 'future CEO of GitHub' speaks out on Atom, keeping GitHub independent and more". ZDNet. Retrieved 21 June 2020.
  2. "Introducing Atom". Atom. 26 February 2014. Retrieved 15 August 2015.
  3. Error: Unable to display the reference properly. See the documentation for details.
  4. "Release 1.61.0-beta0". 8 March 2022. Retrieved 16 June 2022.
  5. 1 2 "FAQ". Atom. Retrieved 12 June 2020.
  6. Henry, Alan (8 May 2014). "Atom, the Text Editor from GitHub, Goes Free and Open-Source". Lifehacker .
  7. Lardinois, Frederic (6 May 2014). "GitHub Open Sources Its Atom Text Editor". TechCrunch .
  8. Ogle, Ben (25 June 2015). "Atom 1.0". blog.atom.io. Archived from the original on 9 Aug 2019. Retrieved 25 June 2015.
  9. 1 2 "Sunsetting Atom". The GitHub Blog. 2022-06-08. Retrieved 2022-06-09.
  10. Wiggers, Kyle (8 June 2022). "GitHub sunsets Atom, the software dev environment it launched in 2011". TechCrunch. Archived from the original on 9 June 2022. Retrieved 9 June 2022. GitHub today announced that it will sunset Atom
  11. "Getting started with Atom". Codecademy. Archived from the original on 2019-10-07. Retrieved 2019-10-07.
  12. "Getting Started: Why Atom". Atom project. Retrieved 17 August 2015. [...] we didn't build Atom as a traditional web application. Instead, Atom was a specialized variant of Chromium designed to be a text editor rather than a web browser. Every Atom window is essentially a locally-rendered web page.
  13. "Atom Shell is now Electron". Atom. Archived from the original on 2017-07-08. Retrieved 2017-07-15.
  14. "Atom GitHub Page". GitHub . Retrieved 27 August 2015.
  15. "Electron GitHub Page". GitHub . Retrieved 14 February 2016.
  16. "Hacking Atom: Tools of the Trade" . Retrieved 22 February 2017.
  17. Brunsfeld, Max (2018-10-31). "Atom understands your code better than ever before". The GitHub Blog. Retrieved 2023-09-10.
  18. Metz, Cade. "GitHub Atom's Code-Editor Nerds Take Over Their Universe". Wired. ISSN   1059-1028 . Retrieved 2024-01-18.
  19. "Facebook retires Nuclide extension". Atom Blog. 12 December 2018. Retrieved 2019-01-12.
  20. "Retiring the Nuclide Open Source Project". Nuclide. Retrieved 2021-04-19.
  21. "Atom IDE". Atom IDE. Retrieved 2018-01-26.
  22. "Nuclide". Nuclide. Retrieved 2016-10-12.
  23. "Juno, the Interactive Development Environment". Juno. Retrieved 2016-10-12.
  24. "PlatformIO IDE: The next-generation integrated development environment for IoT". PlatformIO. Archived from the original on 2016-10-13. Retrieved 2016-10-12.
  25. "GitHub's new CEO promises to save Atom post-Microsoft acquisition". 8 June 2018.
  26. Sobo, Nathan. "Sunsetting Atom". Hacker News. Retrieved 21 June 2022.
  27. Nathan Sobo [@nathansobo] (June 8, 2022). "As Atom's sun sets, Zed's sun is rising. We're not done here" (Tweet) via Twitter.
  28. Eastman, David (2023-04-08). "Zed: A New Multiplayer Code Editor from the Creators of Atom". The New Stack. Retrieved 2023-07-07.
  29. "Built in Rust". Zed – A lightning fast, collaborative code editor. Archived from the original on 8 June 2022. Retrieved 21 June 2022.
  30. Goodin, Dan (2023-01-30). "GitHub says hackers cloned code-signing certificates in breached repository". Ars Technica. Retrieved 2023-03-02.
  31. "Pulsar: A Community-Led Open Source Code Editor to Continue the Legacy of Atom". It's FOSS News. 2022-12-15. Retrieved 2023-09-14.
  32. "Atom Is Now Open Source". Atom. 6 May 2014. Archived from the original on 6 May 2014. Retrieved 15 August 2015.{{cite web}}: CS1 maint: unfit URL (link)
  33. "Have metrics disabled by default, or completely removed". GitHub. Retrieved 3 February 2016.
  34. "Collecting Metrics in Atom Core". Atom. Archived from the original on 2 March 2016. Retrieved 3 February 2016.
  35. "Communicate plan on how to modify metrics to be opt-in now that 1.0 is released". GitHub Atom. Retrieved 3 February 2016.
  36. "should be disableable during install". Atom. Retrieved 3 February 2016.
  37. "Should be disabled by default". Atom. Retrieved 3 February 2016.
  38. "Send telemetry only with consent by damieng · Pull Request #66 · atom/metrics". GitHub.
  39. 1 2 "atom/metrics: A package to collect metrics". GitHub . Retrieved 6 November 2015.
  40. "atom/atom". GitHub. Retrieved 2018-10-13.
  41. "RIP Google Analytics by annthurium · Pull Request #100 · atom/metrics". GitHub. Retrieved 2018-10-13.
  42. "exception-reporting". Atom. Retrieved 3 February 2016.