Eclipse Codewind is a new project from the Eclipse Foundation with a goal to "provide tools to help [build] high-quality cloud-native applications for Kubernetes [and Docker], regardless of which IDE or language you use."
Originally a contribution from the IBM Microclimate project, Codewind’s mission is to assist developers by providing ways to quickly and consistently accomplish tasks that are common to cloud-native application development.
Developers can use Codewind to generate new projects from templates or generate templates from existing projects. They can also use it to start, deploy, incrementally update, debug or performance test applications in Docker or Kubernetes. Additionally, it provides validation features to ensure applications are following best practices as well as help for moving or migrating existing projects to Docker or Kubernetes. The intention is that all of these tools and features are available directly from within the IDE.
Codewind comes with the most support for Java; however, Go, Python, Swift, and Node.js projects are supported. It also comes with specific framework support, supporting Java EE, Spring, MicroProfile, Lagom, and Express. The project is in the incubation phase at Eclipse and level of support varies by technology but will evolve. Initially, it will only be available as a Visual Studio Code extension or an Eclipse plugin. It will also come with support for Eclipse’s cloud-based IDE, Eclipse Che.
The tooling is able to achieve mostly-agnostic IDE integration by running a series of local Docker containers, with defined APIs, which IDE extensions or plugins can communicate with for functionality.
Plans for the project’s future include support for more languages, more frameworks, and more IDEs or development tools. They also include support for tools that help with automated testing, a vendor-neutral Kubernetes dev CLI, and others that are specific to the aspects of cloud-native development.
IBM will continue to invest and contribute to Codewind project, but also welcomes participation and contributions from others. To learn more, visit the project home page or follow the installation instructions to get started.