With the grant amounting to $95K issued by the foundation, we can increase our efforts in working on Solidity Tools even more to make it one of the best Solidity development environments out there!
And it’s getting even better. Thanks to itemis' 4 + 1 work time model, we can work one day each week on Solidity Tools!
For the rest of the year, we will focus on maintenance and completion of the existing features that the IDE provides today. The current release is still in its beta phase – we will work hard to ship the first official release until the end of the year. Besides the Solidity editor, we have some other awesome features in our pipeline.
Language Server Protocol
With LSP Support you can use your favorite editor like Atom, Visual Studio Code or any other editor that supports LSP and thus benefit from most of the features. We are planning to implement a Solidity Language Server. With minimal implementation effort this allows others to reuse Solidity Tools features like code completion, syntax highlighting, rename refactoring and much more in any third party editor!
We also want to help improve code quality by adding static code analysis frameworks like Solium to the IDE. Problems, reported by Solium, will be shown as problem markers in the editor like it is done with Solc errors.
Statechart Tools (now itemis CREATE) Integration
Smart contracts are basically state machines. Calling a method on a contract is nothing else than a trigger that, in most cases, changes the internal state of the smart contract. We started to integrate Statechart Tools (now itemis CREATE) with Solidity Tools to allow modeling smart contracts on a higher layer of abstraction.
This basically means that we can access built-in language features like implicitly globally available variables, constants, and functions while modeling our statechart. The statechart can then be used to generate Solidity code out of it.
How to participate
If you want to contribute, visit our project site on GitHub and feel free to file issues or contribute pull requests.