It might seem hard. I assure you it’s not.
This guide works for any EVM-compatible blockchain. Ethereum, Binance Smart Chain, Fantom, Avalanche, and more. Anything that you can use Metamask with, it works.
Here’s how.
The code
The code is super simple.
Copy, paste, and edit in Remix.
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.16;
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
contract YourShitcoin is ERC20 {
constructor() ERC20("Your Shitcoin", "YOURSHITCOINSYMBOL") {
_mint(msg.sender, 1000000 * 10 ** 18);
}
}
Here are three things you need to know.
- The first parameter in the constructor, “Your Shitcoin“, is the name of your token.
- The second parameter in the constructor, “YOURSHITCOINSYMBOL“, is your token’s symbol.
- The _mint function mints 1 million tokens, 1000000, edit this to whatever you want.
Operating Remix
This is where things get a tad more difficult. I’ll make it as simple as possible.
Delete the default contracts
Remix comes bundled with a bunch of default crap. Delete the contracts that it comes with.

Create a new contract file
Name it YourShitcoin.sol


Paste in the code from above

Make the relevant edits

My token is called Crypto Trading Ninja Token, which has CTNT as it’s symbol, and there are 100 tokens minted on creation.
Compile the contracts
First, change the compiler version.

This should match the pragma solidity
version in the file.
Then hit Compile.

You should get a nice green tick.
Deploy your shitcoin with Metamask
I’m assuming you’ve already got some gas in your wallet…
Set your Environment to Injected Provider.

Select your compiled shitcoin from the dropdown.

Then click Deploy.

After confirming in your wallet, you will have successfully created your first shitcoin.
The address is visible below. Look in deployed contracts. You can add this to your Metamask to see your tokens in your wallet.
