NeoResearch, a NEO development community based in Brazil, has added new functionality and support to its browser-based compiler for NEO smart contracts. The project aims to allow anyone to easily build, test, or deploy smart contracts without needing to set up their own development environments.

The project began in late 2017 and currently supports the development of contracts in C#, Java, Python and Golang. Development of a new major version, 4.0, is currently in the works. This version will include more examples for all programming languages, and full integration with the neon-opt AVM optimizer and neon-sim invocation simulator when those respective projects are completed.

Introduction Video

NeoResearch aims to release a series of video sessions that will introduce developers to the NEO blockchain and its smart contracts, dBFT consensus mechanism, and available tools. The first video was released on April 16th by NEO core developer Vitor Coelho, which acts as an introduction to NeoCompiler Eco.

The video provides a brief overview of the EcoLab UI, demonstrating where the compiler for each language can be selected alongside available examples. Coelho demonstrates the compilation to AVM bytecode, how GAS can be claimed and subsequent deployment of a simple Hello World contract which assigns the value ‘World’ to the key ‘Hello.’

As this contract requires the use of storage functionality, Coelho notes that this option would need to be selected during deployment. He then demonstrates a storage query, which locates the contract but fails to return the expected output value. This is because the contract has not yet been invoked for the first time, so the key has yet to be placed in storage.

After invoking the contract, Coelho then again demonstrates a storage query for the key ‘Hello,’ which now provides the expected output of ‘World.’ To conclude the video, he demonstrates how user-created examples may be stored locally.

Recent Updates

Since version 3.0, NeoResearch has highlighted the incorporation of a lot of additional functionality, including the aforementioned local contract storage that persists between sessions. The team notes that this should be used with caution; it would also be wise to save any contracts manually.

An assortment of features aimed at improving the Ecolab’s usefulness for developers have been added, including the ability to load ABI files on the invoke tab, easily track storage changes and an improved address management system. The group has also added support for advancing signing, such as invoking from multiple addresses.

Due to quick development between version 3.0 and the current 3.4, NeoResearch has provided a merged changelog of all new functionality and other improvements between these versions.

The full changelog may be found here.