The real next-generation Eclipse IDE based on Electron

Can Eclipse Two dethrone the good old Eclipse IDE?

Gabriela Motroc

There is no rest for Eclipse — while most people are still recovering from the obligatory holiday food coma, some are back in business. Doug Schaefer, Eclipse contributor and member of various Eclipse councils and committees, is tirelessly working on Eclipse Two, the real next-generation Eclipse IDE based on Electron.

December 31 is also know as the day people make New Year’s resolutions and solemnly swear to achieve each of them. But it’s not quite a resolution if things have already started to move, is it? Doug Schaefer, a software architect at QNX working on the Momentics IDE, as well as an Eclipse contributor as co-lead of the Eclipse CDT project and a member of various Eclipse councils and committees, explained in a blog post in late 2016 that he is working on Eclipse Two, “the real next-generation Eclipse IDE based on Electron.”

According to the project’s description on GitHub, “the philosophy is to treat the IDE as a web-site which has access to local resources and tools as well as cloud based services. It brings a new user experience to the desktop IDE that is friendly, integrated, and powerful.”

The user starts with a dashboard of cards supplied by plug-ins that give the developer access to all the information they need to do their jobs. From there, the IDE helps the user through working with code, checking that code into source control, integrating changes with change management systems like JIRA or bugzilla, provides a user interface to cloud services like logs allowing the developer to associate code changes with cloud resources.

SEE ALSO: IntelliJ vs. NetBeans vs. Eclipse: Which IDE has the best Angular 2 support?

The foundation of Eclipse Two is Electron which provides an HTML5 user interface with a node.js backend. Plus, The Language Server Protocol will be an essential part of this, along with protocols that integrate other tools. Schaefer opined that Eclipse Two is “a platform that will serve us well for the next 20 years as Eclipse One has done for the last 20 years.” However, he also pointed out that this project can only succeed “with a strong community and with strong architectural leadership that Eclipse is famous for.”

Plan for Eclipse Two

Schaefer revealed in the project’s description that the first phase is to get the IDE to the point where they can self host; this includes features such as:

  • Build support which runs ‘npm run build’ and presents output in a console pane
  • Folder Editor which supports adding and removing files in a directory.
  • File Explorer which navigates mounted directories and opens files in the editor.
  • Text Editor which supports JavaScript, HTML, CSS, and package.json.
  • Launch support which runs ‘npm start’, presents output, and has a stop button that kills the process

The second phase is to add UI to work with Git to further support self hosting and add Github page to support cloning of repo. To support writing extensions using node.js’s native build capability, C++ support will be added and the team will start working with the LSP and CDT in the final phase.

To get the IDE running, one must do the following

npm install
npm run build
npm start

To learn more about the philosophy behind Eclipse Two, check out the Architecture guide.



Gabriela Motroc
Gabriela Motroc was editor of and JAX Magazine. Before working at Software & Support Media Group, she studied International Communication Management at the Hague University of Applied Sciences.

Inline Feedbacks
View all comments