After four years of stable MainNet operation, Neo is undergoing its biggest evolution as it migrates to N3 - The most powerful and feature rich version of the Neo blockchain to date.
All in One
Neo Name Service
All in One
Blockchain technology has evolved tremendously over the past few years. Public blockchains in particular have remained the most important domain, with fierce competition between different platforms across multiple fronts, including Layer 1 performance, developer experience, infrastructure, and ecosystem—among others.
Building a world-class protocol and all the required infrastructure for developers is a daunting task, especially without substantial community backing. It's only natural then that the majority of competing smart contract platforms today are predominantly forks of Ethereum, the most dominant player in the space. By borrowing the Ethereum codebase or even just the EVM, projects can bootstrap their ecosystems and applications with existing Ethereum-based tooling, avoiding the need to construct original solutions.
As more and more platforms have discovered, this shortcut does not come without drawbacks. Inheriting from Ethereum also means inheriting its existing flaws, and places them in direct competition with it for developer mindshare. Although the inherent weakness of Ethereum’s PoW - based Layer 1 has opened the door to its would - be successors, Ethereum’s own pursuit of perfection in its upcoming 2.0 iteration and the maturity of scalability solutions means that the window of opportunity for copycats is rapidly closing.
Since it was first founded, Neo has opted for the path less travelled. Not content with the compromises found in other platforms, and the resulting poor developer or user experiences, Neo has sought to provide only the best-in-class across every possible category. With its pioneering consensus mechanism, original codebase, and multi-language developer-friendly infrastructure, Neo accepted no compromise.
Program the future
Scripting functionality opens a lot of doors to blockchain developers. This has been clear ever since smart contract platforms first started to gain in popularity. However, what has also become clear is that a far wider range of functionality than simple Turing-completeness is required for the next generation of distributed applications.
Some applications depend heavily on data retrieved from the physical world, introducing the need for data oracles. Others, out of concern for regulatory compliance or Sybil defense, require methods for user authentication or attribute verification.
Many applications depend heavily on interoperability, allowing them to transact and interact across multiple blockchains. A variety of use cases also express a desire for decentralized storage, but without the prohibitive cost of on-chain persistence.
Solutions to each of these problems exist, typically encapsulated in one project or another. But this dependency on multiple projects to meet basic blockchain developer requirements ends in yet another significant barrier to entry.
This barrier means mainstream adoption is inevitably hindered. It appears that smart contract platforms are simply not that smart yet.
Neo is the ONE
Enter N3, the most significant upgrade to the Neo blockchain to date. At the protocol level, all users and applications will naturally benefit from its vastly improved architecture—meaning better performance, simplicity and ease-of-use, improved economics, and the introduction of on-chain governance to ensure the platform's longevity in a decentralized manner.
Despite the lofty achievements of Neo's core developers in optimizing its base layer, the real beauty of N3 lies in its diverse set of essential components for applications. Decentralized storage, identity tools, data oracles, interoperability, and a domain name service; all natively integrated for a seamless UX/DX that will stand the test of time.
As blockchain-based applications become increasingly sophisticated, the need for these critical functions will only continue to increase. With its out-of-the-box functionality, available to all developers regardless of their language preferences, Neo provides value to developers that simply cannot be matched by other platforms today. Yet at the same time, Neo developers are never boxed in, always able to choose the right tools for their needs.
Neo N3 is a wakeup call to blockchain developers who demand a better platform for their applications. But perhaps most importantly, it substantially lowers the barrier to entry for blockchain development.
Rather than simply compete over existing developers in a niche industry, it opens the floodgates to the millions of traditional developers who are ready to take their first step into this brave new world. And once you've tried Neo, you'll never settle for less.
Neo strives to be the most developer-friendly blockchain. It achieves this with full-stack development tools for multiple programming languages. Neo believes in bringing blockchain technology to developers, rather than forcing developers to learn new languages or tools.
Your language, your way
Courtesy of its global development communities, Neo’s tooling and infrastructure already supports numerous languages. Developers can write, compile, and deploy contracts written in C#, Python, Go, TypeScript, and Java.
After compilation to the standard NEF (Neo Execution Format), contracts can be executed within NeoVM, Neo’s lightweight virtual machine. Newly upgraded for the N3 network, NeoVM delivers substantial performance improvements over the previous generation, with some instruction set runtimes improved by as much as 16x. NeoVM uses a modular architecture, allowing for easy integration into other applications or off-chain scenarios.
The N3 smart contract system introduces a wide range of new functionality to improve the contract development experience for developers. Examples include a new dual-level permission setting, defined at the Manifest and Call levels, and the new NEP-17 token standard to simplify token transfers and enable contracts to add custom logic to trigger when receiving tokens.
Benefits also extend to off-chain applications. Improvements such as the new contract upgrade mechanism eliminates the issue of a contract hash changes and ensures data is retained.
The price is right
Developers will also note a dramatic reduction in the costs of deploying and executing smart contracts. With fees lowered by an average of approximately 100 times, N3 provides a far more competitively priced platform to developers, allowing the free 10 GAS crutch to be removed. Combined with the GAS inflation mechanism and the burning of system fees, a sustainable economic model has been established.
All fees related to the contract system are now adjustable through the on-chain governance mechanism, providing the additional benefit of resistance to market volatility on the Neo system as the price of GAS changes.
NeoFS is a distributed, decentralized object storage network. Used to its fullest potential, NeoFS can act as the host infrastructure for an entirely new class of truly decentralized applications.
The network also provides benefits for traditional web applications. It is designed to function as a drop-in replacement for expensive centralized data silos, granting developers full control over where and how their application data is stored and accessed. Stored data is always encrypted, and can be set to be decryptable by all or locked down with secure, granular access lists. NeoFS users always remain in complete control of their data.
Malicious nodes that do not correctly store data are mitigated through zero-knowledge data validation techniques, and replication mechanisms provide a reliable service even in the event of a storage node failure. Even in a naturally chaotic decentralized environment, NeoFS provides a reliable service.
An open market
NeoFS operates on free market principles; anyone can join the network as a storage node or become elected to the inner ring to participate in network management and upkeep, earning rewards as a result.
The service is also uniquely customizable; those renting capacity from the network can select their desired geographic placement locations to minimize content delivery time to their users, define specific disk type requirements, or scale up to any desired level of redundancy.
It’s all native
The network’s deep integration with the Neo blockchain introduces another revolutionary innovation. For the first time, smart contracts running on a public blockchain will be able to access and manipulate data stored in the decentralized cloud.
Enabled through Neo’s native oracle, developers can tap into the NeoFS network at the code level, manipulating data from within NeoVM without the cost of persisting the data on-chain.
NeoFS also makes the ideal host for application frontends, replacing the need for centralized web hosts. With the integrated CDN services, applications can even customize edge cache locations, ensuring the fastest possible delivery of data to their core users.
With these pioneering tools, the new era of truly decentralized applications can be achieved with zero compromise on usability.
Decentralized identity tools provide much-needed solutions for user authentication in blockchain-based applications. Although many services may be accessed freely by any user, other specific use cases may depend on verification of specific attributes to function properly.
For example, a DAO application not reliant on stakes for vote weighting may opt to substitute some form of ID verification, or another appropriate mechanism for proof of personhood. This would be vital to prevent a Sybil attack from seizing control of the organization.
NeoID provides the identity framework required to support these application scenarios. It allows users to create and manage decentralized identifiers, issue claims as a data verifier, or integrate attribute verification into their own applications as required.
Users can tap into these verified credentials to gain access to applications without ever needing to share their private data, retaining full sovereignty and preventing its possible misuse.
Smart contracts represent a revolutionary breakthrough for the way that we do business online, but adoption of the technology remains slow. There are many barriers to overcome before decentralized applications are ready for the mainstream, but one of the most notable is the inherent limitation for contracts by the data they have access to. Most existing blockchain applications must rely purely on transactions as a source of input data.
This is adequate for simple applications where a contract already stores the data that it requires to authenticate a particular transaction—a user’s token balance for instance. But if a service wants to use dynamic, real-world data, a trusted source of obtaining that information is required.
Open your world with native oracles
The Internet plays host to an unimaginable wealth of data, ready to be put to use to generate new forms and flows of value. With the native oracle service introduced in N3, it becomes trivial for any developer to tap into any external resources over HTTPS.
Contracts deployed on Neo can invoke the native oracle contract to trigger a data request, specifying a target URL and a filter. Oracle nodes, elected through the Neo Council, will work together to guarantee the truthfulness and reliability of the results.
Many “decentralized” applications leverage the name for its appearance of trust, but in reality only deliver a partially decentralized experience. Some application logic may be contained within a smart contract, but a service’s dependency on cloud providers for frontend hosting or database provisioning introduces new centralized points of failure.
With the power of Neo's native oracle and NeoFS, blockchain-based applications can take the next step forward into true decentralization. Any extra data required by an application can simply be stored off-chain with NeoFS then retrieved in a decentralized manner through the oracle service.
Smart contracts can fetch and manipulate data off-chain in an uncensorable, reliable, and tamper-proof manner.
Neo Name Service
Neo Name Service (NNS) is a decentralized name service built as a native service on the Neo blockchain. It is used to map human-readable domain names to different types of data, such as IP addresses, aliases, or other strings.
One of the most prominent barriers to entry in the blockchain space is the user experience of public key cryptography. Even after conversion to more readable address formats, interaction with blockchain protocols remains tedious and error prone.
To successfully onboard the next generation of users, the blockchain UX must enter the realm of the familiar. Through simple TXT records, both user wallet and smart contract addresses can be given easily typed and identifiable representations.
Aliases also prove useful in various other situations. In NeoFS, they can be used as aliases for stored containers, or used to configure GeoDNS for the NeoFS CDN for improved data retrieval speeds. Applied in this manner, applications can ensure their users encounter minimal latency and fast download speeds while retaining all the benefits of true decentralized storage.
NNS employs an innovative NFT-based approach. Each domain is represented as an NFT, enabling NNS users to freely transfer the ownership of domain names. All necessary functionality for a complete domain life cycle is provided, including registry, renewal, resolution, expiration, and permission control.
When Satoshi Nakamoto introduced Bitcoin and the eponymous Nakamoto consensus mechanism to the world, the value of trustless and borderless transaction settlement was realized for the first time.
Bitcoin and the many blockchains that followed typically achieve consensus with probabilistic finality. In other words, the transaction settlement is not necessarily guaranteed. In most cases, settlement becomes more difficult to overturn as the transaction becomes more deeply embedded in the blockchain.
This is adequate for the needs of some applications, such as low-priority transfers or the simple storage of value. But for most user-facing or highly liquid applications, more reliable assurances are required regarding transaction settlement.
One block finality, maximum confidence
Since its inception, Neo has championed a BFT-powered, safety-first approach that has been rapidly gaining in popularity in the blockchain industry—and for good reason.
Neo’s consensus mechanism, delegated Byzantine Fault Tolerance, represents a new evolution of the groundbreaking PBFT. Similar to its predecessor, dBFT requires a ⅔ majority agreement between validators called consensus nodes before new blocks can be committed to the blockchain.
This means the blockchain will never fork, and every transaction is permanently settled as soon as it is included in a confirmed block. In other words, Neo’s consensus mechanism immediately eliminates the possibility of transaction reversal. All applications based on Neo’s Layer 1 inherit this safety property.
With Neo, users can always enjoy fast, low-cost transactions that are fully finalized within a single block.
Like other Proof of Stake-based blockchains, Neo combines cryptographic tools and game theory to establish a robust and sustainable network. Governance voting by NEO stakeholders ensure all participants are economically aligned in a shared interest to safeguard the blockchain and its growing ecosystem. This democratic mechanism provides the Neo blockchain with all the tools required to fully decentralize control over the network.
Neo strives to be the best platform for building decentralized applications. It achieves this with an unmatched feature set for blockchain that is accessible to developers of all backgrounds. But Neo alone cannot play host to the entire next-generation Internet, and some applications may want to take advantage of unique benefits from other ecosystems.
So easy, it feels native
As a founding member of the interoperability protocol alliance Poly Network, Neo makes cross-chain interaction as easy as a native transaction. Users and applications on the Neo blockchain can easily send assets or tap services from all other participating networks through Poly Network’s bridges.
Most importantly, Poly Network provides an interoperability solution without an extra token. This design ensures the blockchain complements each protocol it integrates with, providing new use cases and opportunities to all.
Poly Network has already transferred more than US $3 billion in equivalent value to Neo Legacy from participating networks. More than 8 networks are already supported, including Bitcoin, Ethereum, Binance Smart Chain, Elrond, Zilliqa, Huobi Eco Chain, Ontology, Switcheo and other Cosmos-based blockchains.
Supporting multiple languages is only one small part of what Neo offers to developers. It caters to varying end user needs with both traditional and web-based IDE integrations. One-stop shop smart contract and dApp development frameworks are also provided to quickly bootstrap developers and get them up and running as architects for the next-generation Internet.
Thanks to the contributions of Neo's independent developer community, users can begin creating applications for the Neo blockchain without ever needing to install any software. Tools such as NEO-ONE, NeoCompiler Eco, and Neo Playground, built by teams from the US, Brazil, and Switzerland respectively, are all accessible directly from within a browser.
To take the platform's developer friendliness to the next level, Neo teamed up with ex-Microsoft veterans to establish NGD Enterprise, a Seattle-based office focused purely on developer experience.
As its flagship project, NGD Enterprise created the Neo Blockchain Toolkit for VS Code, allowing developers to easily deploy private Neo networks then create, deploy, and interact with smart contracts coded in any language. Over the last few years VS Code has emerged as a top choice for developers, cornering over half of the current market share for code editors. This made it a natural choice for integration with Neo tooling, helping the platform meet developers where they already are.
From MVP to production-ready
Put your contract through its paces with automated contract testing tools. As advocates of a test-driven development approach, NGD Enterprise provides an expandable testing framework. Set up a private blockchain, deploy a contract, then analyze it for issues with your own custom unit test suite—all in a single click.
Sometimes errors happen, even in a carefully tested application, and in a decentralized environment they can be very difficult to replicate. Thanks to execution trace capture, you can grab and investigate any transaction on a Neo network and replay it through the Neo Debugger.
The debugger provides a disassembled bytecode view, source code mapping, and revolutionary time-travel debugging tools. Armed with these powerful resources, you can skip the tedious hours spent tracking down bugs by directly stepping forward or backward through both the source code and bytecode, inspecting carefully for any unexpected state changes.