Setup Token Sale (IDO)

Clone the repo from https://github.com/solrazr-app/solr-token-sale

This repo contains

  • Token Sale program

  • JavaScript bindings (using @solana/web3.js)

  • Test client

Environment Setup

  1. Install the latest Rust stable from https://rustup.rs/

  2. Install Solana v1.6.6 or later from https://docs.solana.com/cli/install-solana-cli-tools

Build

Start a local Solana cluster:

$ solana-test-validator

Build token sale on-chain program

$ cd program
$ cargo build-bpf

Deploy the program to localnet using the command displayed when you run the build above. Note down the public-key of the program once deployed (this is the solrazr-token-sale program id) and do the following.

Update TOKEN_SALE_PROGRAM_ID inside js/client/pubkeys.js with the public-key generated above

Build And Deploy Token Whitelist Program

Build and deploy token whitelist program from https://github.com/solrazr-app/solr-token-whitelist

$ cd program
$ cargo build-bpf

Note down the public-key of the program once deployed (this is the token whitelist program id) and do the following.

Update TOKEN_WHITELIST_PROGRAM_ID inside js/client/pubkeys.js with the public-key generated above

Setup Token Whitelist

In order to run token sale program, you will need token whitelist to be created. You will find instructions here https://github.com/solrazr-app/solr-token-whitelist

Running JS Client

Before running the JS client, please ensure you completed the following steps

  1. Update tokenWhitelistMap inside js/client/pubkeys.js with the public-key of the token whitelist map obtained after setting up token whitelist

  2. In the function ExecuteTokenSale inside js/cli/token-sale-test.js, update tokenWhitelistAccount with the pubkey of the token whitelist account (this is different from the token whitlelist map)

You can use the JS client to test the program

$ cd js
$ npm run start

You can modify js/cli/main.js and js/cli/token-sale-test.js to suit your needs.

Last updated