Every developer needs great tools to work efficient. Setting all this up manually can be tedious and error-prone. Further, different projects may require different versions and configurations of such tools. Especially configurations like code-formatters should be consistent within a project to avoid diff-wars.
The devonfw-ide
will solve all these problems. Here are the features we can offer for you with devonfw-ide
:
-
Efficient
Setup your IDE within minutes tailored for the requirements of your project. -
Automated
Automate the setup and update, avoid manual steps and mistakes. -
Simple
KISS (Keep It Small and Simple), no installers or tool-integrations that break with every release. Instead use archive-files (zip or tar.gz), templates and simple shell scripts. -
Configurable
You can tweak the configuration to your needs. Further the settings contain configuration templates for the different tools (see configurator). -
Maintainable
For your project you should copy these settings to an owngit
repository that can be maintained and updated to manage the tool configurations during the project lifecycle. If you use github or gitlab every developer can easily suggest changes and improvements to these settings via pull/merge requests without ending in chaos with big teams. -
Customizable
You need an additional tool that we never heard of? Put it in thesoftware
folder of the structure. Thedevon
CLI will then automatically add it to yourPATH
variable.
Further you can create your own commandlet for your additional tool. For closed-source tools you can create your own archive and distribute to your team members as long as you care about the terms and licenses of these tools. -
Multi-platform
Works on all major platforms, which are Windows, Mac, and Linux. -
Multi-tenancy
Have as many instances of thedevonfw-ide
"installed" on your machine for different projects with different tools, tool versions and configurations. No physical installation and no tweaking of your operating system. "Installations" ofdevonfw-ide
do not interfere with each other nor with other installed software. -
Multiple Workspaces
Support working with different workspaces on different branches. Create and update new workspaces with few clicks. See the workspace name in the title-bar of your IDE so you do not get confused and work on the right branch. -
Free
Thedevonfw-ide
is free just like everything from devonfw. See TERMS_OF_USE for details.
We support the following IDEs:
We support the following build-systems:
However, also other IDEs, platforms, or tools can be easily integrated as commandlet.
TL;DR
? Lets talk to developers in the proper language. Here are examples with devonfw-ide
:
[/]$ devon
You are not inside a devon IDE installation: /
[/]$ cd /projects/devon
[devon]$ mvn
zsh: command not found: mvn
[devon]$ devon
devonfw-ide has environment variables have been set for /projects/devon
[devon]$ mvn -v
Apache Maven 3.6.0 (97c98ec64a1fdfee7767ce5ffb20918da4f719f3; 2018-10-24T20:41:47+02:00)
Maven home: /projects/devon/software/maven
Java version: 1.8.0_191, vendor: Oracle Corporation, runtime: /projects/devon/software/java
Default locale: en_DE, platform encoding: UTF-8
OS name: "mac os x", version: "10.14.3", arch: "x86_64", family: "mac"
[devon]$ cd /projects/ide-test/workspaces/test/my-project
[my-project]$ devon
devonfw-ide has environment variables have been set for /projects/ide-test
[my-project]$ mvn -v
Apache Maven 3.6.0 (97c98ec64a1fdfee7767ce5ffb20918da4f719f3; 2018-10-24T20:41:47+02:00)
Maven home: /projects/ide-test/software/maven
Java version: 11.0.2, vendor: Oracle Corporation, runtime: /projects/ide-test/software/jdk/Contents/Home
Default locale: en_DE, platform encoding: UTF-8
OS name: "mac os x", version: "10.14.3", arch: "x86_64", family: "mac"
[ide-test]$ devon eclipse
launching Eclipse for workspace test...
[my-project]$ devon build
[INFO] Scanning for projects...
...
[INFO] BUILD SUCCESS
This was just a very simple demo of what devonfw-ide
can do. For further details have a look at our CLI documentation.
Now you might ask:
-
But I use Windows/Linux/MacOS/…? - works on all platforms!
-
But how about Windows CMD or Power-Shell? - works!
-
But what if I use cygwin or git-bash on windows? - works!
-
But I love to use ConEmu or Commander? - works with full integration!
-
How about MacOS Terminal or iTerm2? - works with full integration!
-
But I use zsh? - works!
-
…? - works!
Wow! So lets get started with download & setup.