Last updated 3 years ago
Plugin to support development on Cardano inside IntelliJ IDE. One of the major blocker for mainstream developers is unfamiliar / no tooling.
Build an IntelliJ plugin with following features:
- Configure a node in IntelliJ
- Account mgmt
- UI for Transaction & native token mgmt
This is the total amount allocated to Cardano IntelliJ IDEA Plugin (MVP).
NB: Monthly reporting was deprecated from January 2024 and replaced fully by the Milestones Program framework. Learn more here
Build an IntelliJ plugin with following features:
- Configure a node in IntelliJ
- Account mgmt
- UI for Transaction & native token mgmt
Experienced software architect and developer. Exp in Dev Tooling.
Prev work: IntelliJ Plugin for Algorand, Aion
Maintaining BloxBean pool
Summary
-----------
IDE is an integral part of day to day activities of a developer. A good IDE helps the developer to iterate faster and become productive. Usually every developer prefers to work inside his/her preferred IDE if possible. A good IDE should help developers to rapidly prototype to test any new technology.
JetBrains IntelliJ is one of the popular IDE used by Java programmers. JetBrains also has other IDEs for language like Go lang (GoLand), Javascript / html (Webstorms). The plugin written by IntelliJ IDE can be easily compatible with other IDEs from JetBrains.
The long term goal of this project is to provide end to end development lifecycle support for Cardano Blockchain using IntelliJ IDE and other compatible JetBrains products. Developers should be able to interact with Cardano blockchain directly from their IntelliJ IDE for transaction submission, Asset creation / transfer, Smart Contract deployment & testing.
The smart contract support is not yet available in Cardano Blockchain, but there are other features in the Cardano blockchain which can be supported in IntelliJ IDE through a plugin.
The current proposal is to create a MVP release for Cardano IntelliJ IDEA plugin which helps developers to become familiar with the Cardano blockchain. This can be done by providing easy access to different features currently supported by Cardano.
The MVP release will provide a good foundation, so that the plugin can be enhanced to support Smart Contract and other advanced features later.
Some of the features which will be supported in this MVP are
- Configure a remote or local Cardano node in the IDE
- Start & Stop local Cardano node from the IDE
- Account Management
- Create and post transaction from IntelliJ IDE
- Create transaction with meta data
- Native token management ( Create, Transfer etc.)
Supported IDEs
----------------
The MVP release of this plugin will support the following IDEs.
- IntelliJ IDEA Community
- IntelliJ IDEA Ultimate
- IntelliJ IDEA Education
The support for other JetBrains IDEs is optional in this release.
Source Code & Licensing
-------------------------
The plugin source will be hosted at https://github.com/bloxbean under MIT license.
The released binaries will be published to JetBrains Official Plugin repository. Developers can install this plugin using IntelliJ's standard plugin installation steps. Alternatively, the plugin binaries will also be available on GITHub project site.
Features
-----------
The following features will be supported in this version of the plugin.
1. Node Configuration
Developers should be able to configure one or more remote or local Cardano nodes inside their IDE.
The feasibility of type of integration will be decided during the project. But the current plans are
Developer can start and stop both cardano-node & cardano-wallet component on their local machine directly from their IDE.
2. Account Management
Managing test accounts during development could be a painful process. Using account management, developers can create accounts, check account details (balance, assets). The accounts managed by account management module can be easily accessible from various user interfaces like Transaction UI, Native Asset UI etc.
3. Transaction Management
A dedicate UI to create and post transaction inside IntelliJ IDE. Developer can also include meta data and other possible fields during transaction submission. The plugin will automatically get the network params and populate/create the transaction accordingly. This will help developers to quickly post a transaction without going through a multi-step process.
4. Native Token Management
Dedicate UI for native asset creation and transfer. The IDE will keep record of created native assets, so that those can be referred easily inside the IDE.
Delivery plan
--------------
MVP release 1 – 8th week
MVP release final – 10th Week
Monthly milestone release can be planned based on the progress.
GitHub
-------
Relevant experience or Similar work in past
-----------------------------------------------
1. algoDEA – Algorand IntelliJ Plugin
2. Aion4j IntelliJ Plugin
15000Experienced software architect and developer. Exp in Dev Tooling.
Prev work: IntelliJ Plugin for Algorand, Aion
Maintaining BloxBean pool