Neo Global Monthly Report

April / May 2021

Neo Global Monthly Report


Following the release of Neo N3 RC1 in March, the Neo core development team has been hard at work preparing the platform for the first official hackathon. Announced in May, the Neo Frontier Launchpad calls on developers to be among first to build applications on the groundbreaking new version of the Neo blockchain.

As developers begin to line up to compete for over US $100,000 prizes and incubation opportunities, development of N3 enters its final stages. The Neo team shipped two new N3 versions in May, RC2 and RC3, packing in new functionality and optimizations. With the latest round of changes, the first round of builders will find themselves with a stable environment for testing innovative projects and next-gen applications.

In the core protocol, developers will find a number of useful new pieces of functionality made available in the latest releases. Base58Check encoding/decoding in the StdLib native contract, JSONPath support for Oracle responses, and the new Refuel function in the GasToken native contract are just a few of the new features which open new doors for smart contracts.

Neo’s independent development communities also maintained pace with the core, shipping RC1 and RC2-ready versions of their popular tools. These noble efforts have resulted in rich multi-language support for N3, in many cases going beyond what was originally possible on the legacy chain.

The N3 MainNet has yet to launch, but developers can already start writing smart contracts in Python, Go, and Java in addition to C#, or integrate their applications with SDKs available in an even greater variety of languages. This progress is a testament to the dedication of Neo’s communities, the strength of the ecosystem, and the possibilities still to come.



N3 Progress - RC2

In April, the Neo core development team concentrated its efforts on the N3 RC2 version, applying improvements and fixes uncovered after the initial RC1 release. The update brings a number of improvements and optimizations to the protocol, and adds a new C# smart contract compiler. Released on May 2, RC2 was later deployed on TestNet on May 18, allowing developers to familiarize themselves with the latest changes.

Below is a list of the most notable changes found in RC2:

New C# Compiler

A new smart contract compiler has been developed which is able to compile directly from C# code. Replacing the original MSIL-based compiler, the new solution supports more language features, deterministic compilation, and more optimized code, resulting in a better developer experience.

JSONPath Support

In Neo, JSONPath is used to filter JSON responses from Oracle nodes. A set of regular expressions have been defined, mainly related to field access filtering, which are used to restrict the set of valid oracle filters. This ruleset can be easily transplanted across other languages, such as for use in Go or Python tools, ensuring compatibility across different implementations.

NeoFS Transplanting

Efforts to port NeoFS logic from NeoGo to C# are still ongoing. Over the past month, NGD has released a draft PR for the C# version, with storage & design optimizations and tests for the InnerRing. The neofs-api-csharp has been updated to RC2 compatibility.

Other improvements

  • Allow the use of invocation script for contract-based witness verification inside the Calculate Network Fee method
  • Added more functions to StdLib
  • Removed Oracles from the ExtensiblePayload whitelist
  • Replaced NNS with a non-native version
  • Added features to manifest for future implementation
  • Added a new Refuel function to the GasToken native contract


N3 Progress - RC3

The core developers moved quickly through May to follow up with the RC3 release, published May 27. The fast turnaround was intended to prepare the network for the upcoming Frontier hackathon, providing several bug fixes, optimizations, and convenient new features over RC2.

Noteworthy changes in RC3 include:

Base58Check encode/decode

Support for Base58Check encoding and decoding in the StdLib native contract should provide developers with a very useful tool, capable of converting script hashes to and from public addresses from within smart contracts.

CLI governance command improvements

RC3 brings two new functions to the command line, unvote and get accountstate, intended to provide a better user experience for governance participation. Unvote is a more convenient way to cancel voting for a candidate, and accountstate offers a useful reference for checking an account’s candidate choice and current balance.

Other improvements

  • Added slot index to debug info
  • Added support for nullable
  • Reordered send & transfer command arguments
  • Fixed sequence points in C# compiler
  • Fixed StorageMap Put and Get DX
  • Fixed push negative numbers with VM ScriptBuilder





Project Milestones


Flamingo Finance by NGD

Through April and May, the Flamingo team opened the door to a community takeover of the project, opening applications for a new team to take control of the platform’s future development. A new improvement proposal was passed to add GAS support to the platform and establish a source of funds for the future team.


NeoGo by Neo SPCC

In April, Neo SPCC updated its N3 RC1 compatible NeoGo version with various fixes. The team also refactored the CLI implementation with a number of improvements, including NEP-11 commands and support for the data parameter in NEP-17 transfers. Documentation and examples have also received updates to bring them in line with the latest changes and provide a better entrypoint for Neo developers.

Matching pace with the core developer team, Neo SPCC also produced both RC2- and RC3-compatible NeoGo versions in May, adapting to all the key changes whilst adding new functionality. New additions include CLI improvements, such as NFT commands, and custom witness scope declarations for invocations.


Dora by COZ

Dora has been updated with a new network monitor which will replace, with plans for new features and analysis tools. COZ has also begun decommissioning Neoscan, which will have its API mapped to Dora to ensure minimal impact on UI and API consumers. More information on the decommission will be announced on the team’s Twitter page.


Boa by COZ

Boa was updated with a number of critical features that were identified by internal teams using the product. Notable examples include expansion of its type-casting support, allowing more complex storage models within smart contracts. As of May, RC2 support has been released, with RC3 now in the pipeline.

Future updates will focus on ensuring compatibility with N3 changes whilst also developing documentation and examples around the tool to act as references for developers. The first tutorial resulting from this initiative has been released on Dojo, which makes use of Boa and Neon.js.


Neon.js by COZ

Having achieved RC1 support in late March, changes to Neon.js mainly focused on bug fixes and alignments with the more recent modifications to the core N3 protocol. With interfaces around N3 beginning to stabilize, attention will be turned towards producing documentation that will make the project easier to use. RC2 support was completed and released in May, which enabled the SDK to be used for several projects in COZ’s internal Flyby hackathon.

Mamba by COZ

Mamba achieved RC1 parity in April with its v0.6 release. Noteworthy changes found in this version include support for the StdLib and CryptoLib native contracts, improved calling for native contracts, and various other features, fixes, and optimizations. May also saw the release of an RC2-ready build, adding support for recently added native contract functions and the new GAS burning and refuelling mechanisms.


Neow3j by AxLabs

AxLabs released the RC1-compatible neow3j v3.9.0 in April, with a range of useful new features for Java developers. Examples include support in the devpack for multi-file contract debugging and a ByteString type which closely models the NeoVM ByteArray stack item type. Hash160 usage was also propagated to discourage the use of address strings in the SDK API, and new convenience methods have been introduced to make life easier for developers.

In May, AxLabs released the RC2-compatible neow3j v3.10.0 with several important fixes. Also, they updated the external documentation and began building a dApp example for demonstration purposes.

NEO•ONE by NEO Tracker

In April, the team covered much ground in developing an N3 RC1-compatible version of the NEO•ONE platform. The node implementation was completed, capable of syncing with the RC1 TestNet, and a TypeScript contract compiler is also approaching completion. These updates will be pushed to NPM in the coming weeks.

The new version, v3.3.0-rc1, will provide a full node and most client APIs required to interact with the network. The release will also feature the ability to compile, deploy, and invoke a TypeScript smart contract on N3 for the first time. A new N3 website has also been pushed live, which will host N3-related documentation in the future.

On May 5th, the NEO•ONE RC1 version was released. The team are now working on RC2 and expect it to be completed before the end of May.

Neo Blockchain Toolkit by NGD Enterprise

NGD Enterprise deployed its Neo Blockchain Toolkit for RC2, including updates across Neo Express, the Debugger, test harness, and DevTracker. New versions will also make use of the new C# contract compiler. The team also provided new contract samples as a starting point for developers, and internally previewed a new tool, the Neo AppWizard, to build RC2 sample apps.

Additionally, the team unveiled the “N3 Pet Shop” sample application as a working dApp template for developers as part of its ongoing efforts to showcase new platform capabilities.


Neon by COZ

April saw the Neon wallet team turn its focus towards supporting N3. Most changes to the code were associated with adapting to the new network and laying the groundwork for the migration strategy. These changes will be released closer to the N3 MainNet release. The team also noted substantial progress in dApp connectivity, with a planned release for this functionality in the new future.


NeoFS by Neo SPCC

Feedback from the NeoFS TestNet launch resulted in a number of bug fixes and code enhancements for NeoFS. Neo SPCC also newly implemented the EigenTrust algorithm for storage node reputation management, and a new write cache with two cache layers.

The team also added NEP-2 and NEP-6 key support to the NeoFS CLI, and updated its recently released HTTP gateway with fixes and documentation improvements. The HTTP gateway has now been open-sourced, with user guides provided to help get applications up and running.


Code Audit by Red4Sec

Following previous months, Red4Sec maintained its course in assessing the ongoing security of the N3 code. A review of the RC1 implementation is underway, and the team has begun its audit of the recent RC2 release.


Flyby Hackathon from COZ

COZ hosted its internal Flyby Hackathon as a way to test-drive N3 and its infrastructure before the official Neo Frontier Launchpad event. Seven teams of COZ developers and contributors worked to produce a number of interesting projects running on N3 tooling. The unanimous first-placed project was a fully functional dapp offering a payment streaming service built using a Python smart contract.




Ecosystem Growth


Marketing Events

April 5th

NGD Architect, Harry Pierson, joined the Neo News Today Podcast to discuss the Neo Blockchain Toolkit, the many features that make development easy on Neo N3, lessons learned since Harry joined the blockchain world, attracting new developers to the Neo ecosystem, and more.

April 7th

NGD announced it was searching for an independent team to assume responsibility for the Flamingo project. Flamingo has achieved a lot since its launch, aided by the support and trust of the community. As the project matures, NGD will accelerate Flamingo’s development into a more independent, community-oriented project, with a more focused vision for long-term innovation and growth.

April 7th

Da Hongfei participated in an online discussion organized by BSN. They had a detailed discussion on the subject of “How to break the plight of the public chain.”

April 8th

Neo’s “On-chain Developer Boot Camp” project was officially launched, attracting many blockchain enthusiasts to sign up for it.

April 8th

Neo and ChainNews co-organized a knowledge contest with the theme of “N3, the biggest new upgrade since the mainnet’s launch.” 35 NEO were awarded to the top ten participants. The contest ended on April 14.

April 11th

Da Hongfei published an article “Anchoring the Worlds with Flexible and High-Performance On-chain Governance” on CoinTelegraph. The passage discussed how “flexible governance” is needed in the future development of the blockchain industry, to help projects embrace supervision and realize implementation more quickly.

April 16th

Steven Liu, head of NGD development, was invited by Fudan University to speak to the students on the topic of “Smart Contract: Origin and Innovation of Blockchain Application”.

May 10th

Poly Network tech lead, Tan Yuan, and O3 Labs core developer, Blue, participated in Neo Reddit Community AMA on the topic “How to build the innovative cross-chain pool?”.

May 12th

The second Flamingo Perp trading competition was officially launched in preparation for the upcoming official release of Perp. The platform featured many updates and optimizations following the first competition.

May 24th

The Neo Frontier Launchpad was officially launched. Through the Launchpad program, participating developers will be amongst the first to leverage N3’s cutting edge capabilities while also competing for incubation opportunities.