NEAR Protocol operates on several networks each operating with their own independent validators and unique state. These networks are as follows:
mainnet
mainnet
is for production ready smart contracts and live token transfers. Contracts ready for mainnet
should have gone through rigorous testing and independent security reviews if necessary. mainnet
is the only network where state is guaranteed to persist over time (subject to the typical security guarantees of the network’s validation process).
- [ Status ]
- [ Explorer ]
- [ Wallet ]
- [ Data Snapshots ]
Note: near-cli
network selection flag is production
.
testnet
testnet
is a public network and the final testing network for nearcore
changes before deployment to mainnet
. testnet
is intended for testing all aspects of the NEAR platform prior to mainnet
deployment. From account creation, mock token transfers, development tooling, and smart contract development, the testnet
environment closely resembles mainnet
behavior. All nearcore
changes are deployed as release candidates on first testnet, before the changes are released on mainnet
. A number of testnet
validators validate transactions and create new blocks. dApp developers deploy their applications on testnet
before deploying on mainnet
. It is important to note that testnet
has its own transactions and states.
- [ Status ]
- [ Explorer ]
- [ Wallet ]
- [ Data Snapshots ]
Note: near-cli
network selection flag is development
or testnet
. (This network is selected by default with near-cli
and may not need additional configuration)
betanet
betanet
is a public network, where nearcore
is run to test its stability and backward compatibility. Validators on betanet
are participants in the Betanet Analysis Group, where they engage in active discussions, submit bug reports, and participate in issue resolution. On betanet
protocol changes, there are automated hard forks, where the state is compressed into a new genesis. As such, new genesis exists frequently on betanet
, and there are no historical data snapshots. betanet
usually has daily releases with protocol features that are not yet stabilized. State is maintained as much as possible but there is no guarantees with its high volatility.
near-cli
network selection variable is betanet
localnet
localnet
is intended for developers who want to work with the NEAR platform independent of the public blockchain. You will need to generate nodes yourself. localnet
gives you the total control over accounts, economics, and other factors for more advanced use cases (including making changes to nearcore
). For developers, localnet
is the right choice if you prefer to avoid leaking information about your work during the development process.
More on local development here
near-cli
network selection variable is local
Ask it on StackOverflow!