Creating a token on Solana + add a market ( {Token}/USDC)
There are a couple of ways to create a token on Solana.
- You would be to use an intermediary to do the minting for you (and pay for this service)
- Mint your own token using the solana toolkit
This blog looks at option #2
Lets install the solana toolkit and create a wallet that will be used to fund the minting of our token
MacOS / Linux
sh -c “$(curl -sSfL https://release.solana.com/v1.10.8/install)"
Windows
curl https://release.solana.com/v1.10.8/solana-install-init-x86_64-pc-windows-msvc.exe --output C:\solana-install\solana-install-init.exe --create-dirsC:\solana-install\solana-install-init.exe v1.10.8
Then Run
solana --version
Lets create a token and add some supply
For this example we 1st need to have Rust and the solana CLI installed: (there is also a js option)
$curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh$cargo install spl-token-cli
Set the config to use the Solana mainnet as we want our token to be available and searchable there
solana config set --url https://api.mainnet.solana.com
Create a wallet (keypair) and grab your public address
$ solana config set --keypair ${HOME}/my-keypair.json$ solana-keygen pubkey my-keypair.json
CSjoCS6GyRpf7nXmcLKy69MEy36dbMGMKK8X8SVHkCum
- Fund your wallet (minting needing some network fees). Using devnet you can try this for free using an airdrop. But for this blog we want to mint on mainet.
- I used phantom as its super easy to use and one of the more secure solana wallets

Now to creating our token
$ spl-token create-tokenCreating token 6QSQ28juyiV5bkQ19AttaLPidtGDZbSKPbM2GrvRAAQA
Signature: 3q1sQGdpPJmEWQeo1r79bLEvgALQVMLK22X18RdC5gMMSQbpR9CSdaxTfr7Wrf9joXoXK7rckivpHBxEujFC2hBE
Create an account to hold the tokens associated with the mint we created
$ spl-token create-account 6QSQ28juyiV5bkQ19AttaLPidtGDZbSKPbM2GrvRAAQACreating account EantcMh3pD8G7MNDMhonEsxj7YbEg1kem2khJVmgPwDy
Signature: 42Sa5eK9dMEQyvD9GMHuKxXf55WLZ7tfjabUKDhNoZRAxj9MsnN7omriWMEHXLea3aYpjZ862qocRLVikvkHkyfy
Now lets mint some tokens (around 26 million should do it)
$ spl-token mint 6QSQ28juyiV5bkQ19AttaLPidtGDZbSKPbM2GrvRAAQA 2601706000
- Send some of these to our solana (Phantom) wallet, 1 million will do.
In this case we (the sender) will pay the network fee by using the fund recipient flag
$ spl-token transfer --fund-recipient 6QSQ28juyiV5bkQ19AttaLPidtGDZbSKPbM2GrvRAAQA 1000000 6DAjGaEsiYT5KDawvKSinteBVBaQyda6JVjXpqkjSq8sTransfer 1000000 tokens
Sender: EantcMh3pD8G7MNDMhonEsxj7YbEg1kem2khJVmgPwDy
Recipient: 6DAjGaEsiYT5KDawvKSinteBVBaQyda6JVjXpqkjSq8s
Recipient associated token account: F59618aQB8r6asXeMcB9jWuY6NEx1VduT9yFo1GTi1ks
Funding recipient: F59618aQB8r6asXeMcB9jWuY6NEx1VduT9yFo1GTi1ks (0.00203928 SOL)
Signature: 5Cce4rX5ZqqmkKiQ9rccuD3MZNZfhFhvmFjaNBxxu3bXBfBiUXGJUa1btmTKR68rQwdnczHHLUpNCGE1rfwtP97d
You will see the 1,000,000 tokens appear in you phantom wallet list of tokens. This will show as ‘Unknown Token’. We will look at updating this in the next section to give our token a name and image.
Add our logo, website and twitter account
Fork the solana labs token-list where we will add our logo and token information which will then show on solscan.
Create a new Fork

Clone that fork

git clone https://github.com/sgriffiths/token-list.gitcd token-list
You want to create a folder in the assets/mainnet folder using your token-address. Eg: 6QSQ28juyiV5bkQ19AttaLPidtGDZbSKPbM2GrvRAAQA

Add the token information to the solana.tokenlist.json file. Would look something like this:
{
"chainId": 101,
"address": "6QSQ28juyiV5bkQ19AttaLPidtGDZbSKPbM2GrvRAAQA",
"symbol": "THEA",
"name": "Theadex",
"decimals": 9,
"logoURI": "https://raw.githubusercontent.com/solana-labs/token-list/main/assets/mainnet/6QSQ28juyiV5bkQ19AttaLPidtGDZbSKPbM2GrvRAAQA/theadex_logo.png",
"tags": [
"social-token",
"community-token",
"DeFi"
],
"extensions": {
"twitter": "https://twitter.com/theadex2",
"website": "http://theadex.io"
}
},

Sync the changes up to your github fork and then create a new pull request from your forked repo (fetch the latest for the token-list repo first if needed)

Choose ‘compare across forks’ and select your fork from the drop down

Then wait for the solana-tokenlist automerge bot to pick up the PR and process it. This can take up to an hour.
Fix any errors if the merge does not succeed. Here is the Commit/PR I made that was accepted
Give it sometime and then view the token on solscan. It should now have an image, token name, quantity, website details etc

Time to create the market ID
Head over to dexlab connect your phantom wallet and complete the fields. We are creating a market for our THEA token and USDC

Then Add the Market
Complete the form
Now to create a pool where we can allow our token to be traded against USDC
Head over to dexlab to create the pool
Connect your phantom wallet (Can cost between 3–5 SOL) to complete the Pool creation
Once the market has been completed you will be able to see the logo and relevant information on Solscan for that {Token}/USDC pair
