How To Make Your Own Cryptocurrency Token on Solana 🤝
Tags: beginners, rust, tutorial, solana
Published: 2022-01-25 04:08:10

Sol address: 4mgnTysrA7kQVYCsE2CJcaJzpX8xPxGPoKPz2LyiN782

Twitter: https://twitter.com/OfficialCoreyS

## **Project overview**
In this tutorial we are going to go over how to make your very own Shitcoin, I mean Crypto coin! LOL

Without further a-do(idk if thats even correctly said) lets get into what we need to get started.

## **Prerequisites**

This doesn't require much coding at all, so beginners should be able to follow right along! 

We are going to need a small amount of Sol so we can do some transactions on the Blockchain to get it live. Under $5

Github Account: [GitHub](https://github.com)

Solana Tool Suite- [Solana Tool Suite](https://docs.solana.com/cli/install-solana-cli-tools)

Git: [Git](https://git-scm.com/downloads)

Rust: [Rust](https://www.rust-lang.org/tools/install)

## **Getting Started**

Let's start by creating ourselves a new wallet in the command line interface(Terminal) by running a command. Open your terminal and run :

```
solana-keygen new
```

If you already have a Solana key-pair on your computer then you don't have to do this first step. Here is what it will look like in terminal when you type that command in:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ch5w0hw2p869iqt4js60.png)

You can type in whatever Passphrase you want, then you'll get your Pubkey in the next screen:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ol1yhszc922my1xhfzit.png)
Im hiding my passphrase for oniouvous reasons haha

Alright, cool. Now we need to send some Sol to this address so we can pay for the transaction while making the token. So, send some Sol over from a Phantom or Coinbase wallet.

Once sent, we can go back into our Terminal and check the balance of our new wallet by running the command:

```
Solana balance
```
You should get the amount of Sol that you sent from your other wallet like:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/cxrh3f5z0wz701oiacmj.png) 

Alright, on to the next. 

Now, we are going to create the Token.

Lets run a command in our Terminal to get the SPL token CLI:

```
cargo install spl-token-cli
```

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f7xh1tfpazjftpcqpzy5.png)

Now, lets run this command which will create the token and give you a token address:

```
spl-token create-token
```

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1nudxo0k1ejw4t07as0i.png)

*Just a fyi, if you get an error, it could be because you do not have any Sol in your new wallet.*

DOPE, we have made the token. Well sort of.. We still have some more to do.

You can actually take the token address of your new token and  look at the Solana Explorer and see it live on the Blockchain!! 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/cz4kusyyuixav4uoakp1.png)

It says Unknown token now, but we are going to name it..

#**Account**

Now, let's make an account to handle the new token we just made. In your terminal we are going to run the command:

```
spl-token create-account F4x1DFSzeKrNrmKQFiGkeTKrZQkkAng9Hi7GFk91RGY
```

Replacing the address with the new SPL token address you just created.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vaz9n7cn9tiaulkliqdq.png)

Go ahead and run this command to check the balance of our wallet: 

```
Solana balance
```
and you'll notice not much Sol is gone, as it's not that expensive to transact over the Solana blockchain. 

#**Time to Mint🥶**

Now, let's go ahead and mint these bad boys and send them around why don't we. 

Head over to our terminal and lets run this command:

```
spl-token mint tokenAddress mintAmount recipientAddress
```
tokenAddress being the new token we just made.
mintAmount being the amount we want to Mint!(like bitcoin only has 21m)
recipientAddress is the wallet you want to send it over to.

Take a look at an example:

```
spl-token mint F4x1DFSzeKrNrmKQFiGkeTKrZQkkAng9Hi7GFk91RGY 1000000 9m1yqFTi12WPVrJnhcwUbGFj9iT7kyTg5K2wy6SrXFo6
```

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qgqiqvplrdc3usvns5aq.png)

Okay, now that we have that all done, let's move along to pushing this to Github.

#**GitHub Pull Request**

Before we do any forking, we need to make a Repository to host our logo for the token. Lets go to Github and click Create a new repo:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e0uw718wi2yqf9agbz1t.png)

Name it whatever you'd like and click create at the bottom.

Next, we are going to upload our logo image:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wfhc0u374iguud01fsjk.png)

Okay. Now we have our logo added to a repo.

Let's go on over the Github to get the Solana token list repo.

You can find the Solana token list Github here: [Token List](https://github.com/solana-labs/token-list)

Let's FORK that repo.

Now that we have it forked, while we are in in our forked version we are going to hit the . button. Yes, the period button. This is going to open Visual code studio in your browser, like this:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3nuephze38woxoact7vi.png)

We are going to change a few things in here, so don't be scared of all the code, idk what it all means either loll.

First, let's go into the assets folder on the left side as seen with the arrow, and then we are going to click the little Add folder button at the top, again, as seen in this picture:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4er7h1mdstdjjmuf2kz0.png)

Then, we are going to paste our new token address into the window that pops up and press enter!

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/49k2nf1molsheblo9t0a.png)

Then, go ahead and right click on your new token address and click upload. Here, we are going to upload a logo for our new token!!

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/41ue0ubmm9my2t8sqz2h.png)

Now, lets head into the src file and then tokens and open up the .json file:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/odmmooe4qnvdz5cq3b01.png)

Let's scroll all the way to the bottom of the file where the last token was added. Go ahead and copy it like this:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ckk3sknsadj8vkatgicz.png)

Then, we want to add a comma at the last syntax like in this picture, hit enter, and then paste that code:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dwe5h4acbdaqs97shhae.png)

Now, we are going to change a few things in that pasted code we just did..

We are going to change the address to the address of our new coin. 
Change the Symbol to whatever you want
Change the name to whatever you want

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/szfgp0cqc6kgyrifsj0l.png)

And also change the logo uri by going to out Logo Github Repo and clicking download and copying the URL in the address bar.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/18nb1hilq7b07lyj138k.png)

Next, lets head over to this little symbol on the left, to commit our changes:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/d3ga3hv7cp4vsem1lvuw.png)

First, type in the change we are making, and then hit the check mark as seen in the pic:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/76bci31jv3gnuzsuj6cx.png)

Cool, now lets head back to the actual solana labs token list GitHub repo, here's the link : [https://github.com/solana-labs/token-list](https://github.com/solana-labs/token-list)

Go ahead and click on Pull Requests:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/86k9cuqbzhba2k523b06.png)

Then go ahead and click on new pull request.


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8uxd11dkzqgqyweahwe9.png)

Then.. lets click compare across all forks:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9a48ye24p8b0xeembwww.png)

Then we are going to click on the head repository drop down, and you should see your Repo there. Click on it:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/m1j904rwlesntju3difm.png)

Next, lets go ahead and do the pull request:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1t8f28ciudx2jby65y09.png)

And there we have it. It takes some time, but eventually it will be auto-merged and added to the token registry!

I hope this helps someone out because I know this was confusing as hell for me in the beginning. 

Feel free to shoot me a follow on my socials!!!

Github: https://github.com/coreyman11

Twitter: https://twitter.com/OfficialCoreyS