Clover Testnet and Validator Program - DropsEarn
Clover Testnet and Validator Program

Clover Testnet and Validator Program

    Clover starts the testnеt and offers to participate. In order to gather more community users and developers to participate in the network, Clover will launch an incentivized program - Clover Validator Program. This program aims to test the security and stability of the network and eliminate any potential hidden risk for the future mainnet launch.

    Reward pool
    ~ $73,000
    Expected profit
    from $300
    Max participants
    DropsEarn score
    Medium

  • Activity Type: Registration Tasks Testing Testnet Nodes Validator
  • Date: from 8 Jan 2021 12:00(UTC+3)
  • Registration: Open
  • Event status: You can participate (Event started, Registration open)
  • Links: Validator Program Information Registration Official Announcement
Go to event page

Event Details 

This site provides documentation for Clover, an Operating System parachain on the Polkadot network. Here, you'll find both high-level and technical information for developers, collators, end users, and other Clover network participants.

This site will be updated from as Clover evolves. Team welcome everyone joins the Clover community and contribute to this site and the project.

What is Clover

Clover is a Substrate-based Polkadot parachain. Clover is committed to providing easy-to-use blockchain infrastructure and creating a one-stop comprehensive infrastructure platform, which aims to reduce the threshold and cost for developers, while bringing them great returns.

Blockchain Operating System

Clover is a Blockchain Operating System, which contains storage layer, smart contract layer, Defi protocol layer and eApp layer, in details:

  • Storage layer: Storage protocol layer supports distributed storage of dApp data. The supported protocols are IPFS, AR, CRUST etc.
  • Smart contract layer: It supports one-stop cross-chain deployment and calls of dApp. Clover provides a Web3-compatible API, and existing web3 dApps can be migrated to Clover without any change needed.
  • Defi protocol layer: It supports various basic Defi protocols, such as Swap, Lending, Insurance, etc. It also provides a platform on where developers can build their own Defi protocols. Also, Clover provides a drag-drop smart contract compiler, which is easy-to-use, faultless and can be compiled to WASM.
  • eApp layer: It supports the evolution from dApp to eApp (External App). Developers can build and deploy their eApp easily on Clover, without the need for machines, domain names, or network bandwidth.

Built on Substrate

Substrate is technically fit for Clover. By building on top of Substrate, Clover is able to leverage the extensive functionalities that Substrate provides out-of-the-box, rather than needing to build them from scratch. These functionalities include peer-to-peer networking, consensus mechanisms, governance functionality, EVM implementation, and more.

Overall, using Substrate will dramatically reduce the time and work needed to implement Clover. Substrate allows a great degree of customization, which is compulsory when achieving compatibility with Ethereum. Meanwhile, by adopting Rust, Clover will gain both safety guarantee and performance enhancement.

Create an account

Firstly, open Clover Apps portal and select the "Clover" node in the network list in the left side navigation bar.



Generate an account using Clover Apps

Click the "Accounts" menu item in the top navigation bar.


 

New Account

There're several buttons to add an account: "Add account", "Restore JSON", "Add via Qr", etc.



Click "Add account" to create a new account.



After setting the account information click the "Next" button.



Click the "Save" button, the account will be created and the backup file will be promoted to download. Save the backup file to a safe location and keep it secret.

Restore account from backup

You can restore an account by restoring it from the json backup file.

Click "Restore JSON" button



Select your backup json file and fill the password of the json file then click the "Restore" Button. The account will be restored to the account list.

Run a Clover node

If you're building dapps or products on a Substrate-based chain like Clover or a custom Substrate implementation, you probably want the ability to run a node-as-a-back-end. After all, it's always better to rely on your own infrastructure than on a third-party-hosted one in this brave new decentralized world.

This guide will show you how to connect to Clover network, but the same process applies to any other Substrate-based chain. First, let's clarify the term full node.

Types of Nodes

A blockchain's growth comes from a genesis block, extrinsics, and events.

When a validator seals block 1, it takes the blockchain's state at block 0. It then applies all pending changes on top of it, and emits the events that are the result of these changes. Later, the state of the chain at block 1 is used in the same way to build the state of the chain at block 2, and so on. Once two thirds of the validators agree on a specific block being valid, it is finalized.

An archive node keeps all the past blocks. An archive node makes it convenient to query the past state of the chain at any point in time. Finding out what an account's balance at a certain block was, or which extrinsics resulted in a certain state change are fast operations when using an archive node. However, an archive node takes up a lot of disk space - around Clover's 1.6 millionth block this was around 15 to 20GB. When running a validator, this requirement doubles as the sentry node in front of a validator should be an archive node too.

A full node is pruned, meaning it discards all information older than 256 blocks, but keeps the extrinsics for all past blocks, and the genesis block. A node that is pruned this way requires much less space than an archive node. In order to query past state through a full node, a user would have to wait for the node to rebuild the chain up until that block. A full node can rebuild the entire chain with no additional input from other nodes and become an archive node. One caveat is that if finality stalled for some reason and the last finalized block is more than 256 blocks behind, a pruned full node will not be able to sync to the network.

Archive nodes are used by utilities that need past information - like block explorers, council scanners, discussion platforms like Polkassembly, and others. They need to be able to look at past on-chain data. Full nodes are used by everyone else - they allow you to read the current state of the chain and to submit transactions directly to the chain without relying on a centralized infrastructure provider.

Another type of node is a light node. A light node has only the runtime and the current state, but does not store past extrinsics and so cannot restore the full chain from genesis. Light nodes are useful for resource restricted devices. An interesting use-case of light nodes is a Chrome extension, which is a node in its own right, running the runtime in WASM format here.​

Fast Install Instructions (Mac)

Not recommended if you're a validator. Please see secure validator setup

  • Type terminal in the ios searchbar/searchlight to open the 'terminal' application
  • Install Homebrew within the terminal by running: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
  • Then run: brew install openssl cmake llvm
  • Install Rust in your terminal by running: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
  • Once Rust is installed, run the following command to clone and build the Clover code:
  • git clone https://github.com/paritytech/Clover clover
  • cd clover
  • ./scripts/init.sh
  • cargo build --release
  • Run the following command to start your node: ./target/release/clover --name "My node's name"

Fast Install Instructions (Windows)

This works only on Windows Pro with virtualization enabled.

Not recommended if you're a validator. Please see secure validator setup

Fast Install Instructions (Linux)

Not recommended if you're a validator. Please see secure validator setup

For the most recent binary please see the release page on the Clover repository. The URL in the code snippet below may become slightly out-of-date.

Also please note that the nature of pre-built binaries means that they may not work on your particular architecture or Linux distribution. If you see an error like cannot execute binary file: Exec format error it likely means the binary is not compatible with your system. You will either need to compile the source code yourself or use docker.

  • Determine the latest version of the Clover binary (you can see the latest releases here:
  • https://github.com/clover-network/clover/releases)
  • Download the correct Clover binary within Ubuntu by running the following command. Replace *VERSION* with the tag of the latest version from the last step (e.g. v0.8.22): curl -sL https://github.com/clover-network/clover/releases/download/*VERSION*/clover -o clover
  • Run the following: sudo chmod +x clover
  • Run the following: ./clover --name "Your Node Name Here"
  • Find your node at https://apps.clover.finance/#/explorer

Get Substrate

Follow instructions as outlined here - note that Windows users will have their work cut out for them. It's better to use a virtual machine instead.

Test if the installation was successful by running cargo --version.

  • λ cargo --version
  • cargo 1.41.0 (626f0f40e 2019-12-03)

Clone and Build

The clover-netwoek/clover repo's master branch contains the latest Clover code.

  • git clone https://github.com/paritytech/clover clover
  • cd clover
  • ./scripts/init.sh
  • cargo build --release

Alternatively, if you wish to use a specific release, you can check out a specific tag (v0.8.3 in the example below):

  • git clone https://github.com/paritytech/clover clover
  • cd clover
  • git checkout tags/v0.8.3
  • ./scripts/init.sh
  • cargo build --release

Run

The built binary will be in the target/release folder, called clover.

  • ./target/release/clover --name "My node's name" --chain specs/clover-cc1-raw.json

Use the --help flag to find out which flags you can use when running the node. For example, if connecting to your node remotely, you'll probably want to use --ws-external and --rpc-cors all.

The syncing process will take a while depending on your bandwidth, processing power, disk speed and RAM. On a $10 DigitalOcean droplet, the process can complete in some 36 hours.

Congratulations, you're now syncing with Clover. Keep in mind that the process is identical when using any other Substrate chain.

Running an Archive Node

When running as a simple sync node (above), only the state of the past 256 blocks will be kept. When validating, it defaults to archive mode. To keep the full state use the --pruning flag:

  • ./target/release/clover --name "My node's name" --pruning archive

It is possible to almost quadruple synchronization speed by using an additional flag: --wasm-execution Compiled. Note that this uses much more CPU and RAM, so it should be turned off after the node is in sync.

Using Docker

Finally, you can use Docker to run your node in a container. Doing this is a bit more advanced so it's best left up to those that either already have familiarity with docker, or have completed the other set-up instructions in this guide. If you would like to connect to your node's WebSockets ensure that you run you node with the --rpc-external and --ws-external commands.

  • docker run -p 9944:9944 clover-network/clover:latest --name "calling_home_from_a_docker_container" --rpc-external --ws-external

More

  • Network Name: Clover TestNet
  • RPC URL:
  • https://rpc.clover.finance
  • https://rpc-2.clover.finance
  • https://rpc-3.clover.finance
  • Web Socket URL:
  • wss://api.clover.finance
  • wss://api-2.clover.finance
  • wss://api-3.clover.finance
  • ChainID: 1337
  • Symbol (Optional): CLV

Using MetaMask for Test Net

In MetaMask, navigate to Settings -> Networks -> Add Network and fill in the above details:



Then the MetaMask can connect to Clover Test Net. You can apply CLV for test via the faucet here.​

Using Remix for Test Net

Make sure your MetaMask is connected to Clover Test Net as described above. The screen shot is as follows:



Connect to Clover Testnet

If you want to set up a local node, which can connect to Clover Test Net, please use the following command to start your local node.

  • ./target/release/clover --chain specs/clover-cc1-raw.json --port 30333 --ws-port 
    9944 --rpc-port 9933 --name myNode --rpc-cors=all --rpc-methods=Unsafe 
    --validator --unsafe-ws-external --unsafe-rpc-external
    

Clover has now released the Preview Network. After several days of internal testing, the Clover Preview Network can now operate stably, with a network infrastructure that has become increasingly complete.

  • Clover will allocate 10,000 $CLV (Mainnet Token) as an incentive for this program.

Event Time & Date

  • 2:00 PM on March 17, 2021 - 2:00 PM on March 31, 2021 (UTC)

How to participate

Run a Clover Full Node or Validator Node

If you encounter any problems during the competition, you can join their developer group to ask questions here.

Attention

  • Participants must fill in a registration form
  • The format of the node name for “Node Name | first 10 letter of Clover address”, address needs to have a balance, could be withdrawn in the faucet.
  • Participants who do not meet the above requirements may not receive any rewards from the incentive pool.

Rewards

Type 1

Validators will be ranked according to block production, offline rates, and the total online time, etc.

  • Top 1–5 300 $CLV each
  • Top 6–15 200 $CLV each
  • Top 16–30 100 $CLV each

Type 2

Every day, team will draw 5 lucky nodes from the nodes list and reward 50 $CLV each

Type 3

Rewards for quality PR pieces that the team will review. Rewards will be given according to the quality and importance and might be zero if minimum standards are not met. (100–200 $CLV)

Related documents

Useful links

Notes

  • The rewards for this event will be distributed to Math Cloud Wallet, registration link.
  • Event rewards will be distributed within 7 working days after the event ends.
  • The 5 lucky nodes will be picked every day, but the event rewards will be distributed together after the event.