Solana is a high-performance blockchain platform that is renowned for its incredibly quick transaction times and inexpensive transaction costs, making it a great option for many different decentralized apps and projects.

In this exercise, we will start from basics and follow step-by-step explanations/instructions to do the following activities:

1. Creating a local Solana test network.

2. Using Solana CLI to do the following:

  • Generate keypair or accounts

  • Checking balance of an account

  • Transferring SOLs from one account to another

  • Using airdrop to get SOL from faucet

Prerequisites:

Basic Understanding of Docker. If you are unfamiliar with Docker, you can learn the basics here

 

Important concepts related to exercise:

  1. Solana CLI: Solana Command Line Interface utility allows users to interact with Solana networks. It can be used to perform various options like creating/managing keypairs, checking balance, transferring SOL, deploying smart contracts, and much more.

  2. Solana Test Validator Docker Image: Docker image that runs a local Solana network on your local machine or in our sandbox . The validator node validates and processes transactions, maintains consensus, and secures the network. A public network is required to have thousands of validators. However, in a private network few nodes are sufficient. And, in a test network like ours, even one is enough.

  3. Keypair: A keypair consists of a public key and a private key. The public key (or the account address) is used to receive funds, while the private key is used to sign transactions. Hence, while the public key is not confidential information (ignoring the privacy aspect), the private key needs to be protected. We will generate two key pairs in this exercise.

 

Relevant Resources:

Here are some more relevant resources for your reference:

1. Command-line Guide | Solana Docs

2. Using Solana CLI | Solana Docs

3.Docker Basics | Learn and Practice Blockchain & Web3 Tasks | Web3Coda

4.Docker Docs: How to build, share, and run applications | Docker Documentation