Equo IDE: AI Coding Tools
for Eclipse Developers + Your IDE as a Build Artifact
Sebastian Sampaoli on February 27th 2024
We've been collaborating with our friend and partner Ned Twigg (@NedTwigg) from Diffplug on an open-source project: an Eclipse-based IDE, named Equo IDE. Special thanks to Ned for his exceptional work, as he was the visionary who conceived this idea and worked with us on this development.
The buzz around AI coding tools has been undeniable, broadly categorized into:
Eclipse users can now leverage these AI tool categories. For a quick start, clone this repository and execute ./gradlew equoIde --clean or ./mvnw equo-ide:launch to set up an example project complete with the discussed plugins and some code for experimentation.
ChatGPT: Embedded in the IDE!
When it comes to chat-based tools, the trick is to say "this is the code I have, this is what I want you to do with it". It is shocking how effective it is.
You can also ask ChatGPT to write code from scratch. The combination of its domain knowledge plus coding ability is surprisingly effective.
Copilot
While GitHub Copilot isn't currently available for Eclipse, Tabnine offers a similar solution, with benefits including a free tier and self-hosting capabilities.
Ensure Tabnine functionality by logging into your account via the Tabnine Starter button located in the bottom right corner of the IDE.
How to use the Equo IDE in your Projects
To use the Equo IDE in your project in Gradle with gradlew equoIde (more info):
plugins {
id 'dev.equo.ide' version '{{ latest version at top of page }}'
}
equoIde { // launch with gradlew equoIde
gradleBuildship().autoImport('.')
tabnine() // same idea as GitHub Copilot, but with free and self-hosted versions available
chatGPT() // use GPT3 & 4 (no waitlist!) to refactor, write tests, and generate documentation
}
or like this in Maven with mvn equo-ide:launch (more info):
<plugin> // add this to pom.xml/<project><build><plugins>
<groupId>dev.equo.ide</groupId>
<artifactId>equo-ide-maven-plugin</artifactId>
<version>{{ latest version at top of page }}</version>
<configuration>
<jdt/>
<m2e><autoImport>${project.basedir}</autoImport></m2e>
<tabnine/> // same idea as GitHub Copilot, but with free and self-hosted versions available
<chatGPT/> // use GPT3 & 4 (no waitlist!) to refactor, write tests, and generate documentation
</configuration>
</plugin>
You can also see all the plugins we support in Catalog, and we also support any arbitrary maven-based or p2-based plugins. See P2 Multitool for info on browsing and working with p2 repositories.
Prompt Engineering
If you do some googling around "Prompt engineering", you'll see suggestions to start every chat session with "You are an expert Java programmer" to put the LLM into the "right mood" for best generating your code. You can also ask the LLM to make its answers as brief as possible, or to explain each step in detail.
The Equo ChatGPT plugin lets you put these best practices into templates so that you don't have to repeat yourself. It also copy-pastes your code into the chat window for you, to save a step and remove a possible source of errors.
The Equo ChatGPT plugin was inspired by another Eclipse plugin called AssistAI. AssistAI has the advantage that it integrates with the Eclipse context menus, but the disadvantage is that it requires an API key - ChatGPT Plus isn't enough.
Join the Equo IDE Community
We invite Eclipse IDE developers to explore the Equo IDE and contribute to its ongoing development. By joining the Equo IDE project on GitHub, developers can not only leverage its powerful features but also shape its future.
Conclusion
Equo IDE empowers Eclipse IDE users with AI by integrating ChatGPT and Tabnine directly into the IDE. ChatGPT enhances programming assistance, code completion, error detection, and natural language processing, boosting coding efficiency and productivity. Tabnine further complements this with its advanced autocomplete tool.
Moreover, Equo IDE serves as a build plugin for Gradle and Maven. That means that Equo IDE is:
And allow teams to: