⛏ Witness School · MELEK · PRANA pool
SchoolDevLearnAcademyBuildWhitepaperRunPoolFeesServersWalletHathorLibrary

Token standards · ERC-20, TRC-20, BEP-20 — and PRC-20 on PRANA

A "token" on an EVM chain is not magic and not a coin baked into the chain — it's a smart contract that keeps a ledger and follows one small, agreed-upon interface. Learn that interface once and you can read, make, and move tokens on every EVM chain — Ethereum, TRON, BNB Chain, and PRANA. This is the EVM side of making a token; the MELEK-Engine / SCOT side is over on Make a token.

1 · What a "-20" token actually is

The ERC-20 standard (EIP-20) is just a list of functions a contract promises to have. A wallet or exchange that knows these can handle any token, sight unseen — that's the whole point of a standard:

That's it. The balances live in a mapping(address => uint256) inside the contract. A token is a ledger with those six functions bolted on.

2 · One standard, many chains

Because these chains all run the EVM (or an EVM-compatible VM), the same ERC-20 interface is simply re-branded per chain. Learn it once, deploy it anywhere:

NameChainVMWhat it is
ERC-20EthereumEVMThe original — EIP-20, 2015. Every other -20 is this interface.
TRC-20TRONTVM (EVM-compatible)The exact same interface on TRON. A TRC-20 token is an ERC-20 the TRON VM runs.
BEP-20BNB ChainEVMERC-20 with a few conventions added. Same six functions underneath.
PRC-20PRANAEVM (core-geth)Our name for it. A PRC-20 is an ERC-20 — deployed to PRANA (chain id 712217). KULA, wMELEK, wVKBT are PRC-20 tokens.

Same interface ⇒ the same tools work everywhere: MetaMask to hold, Remix or Hardhat / Foundry to build, an Etherscan-style explorer (PRANA's is PRANAScan) to inspect. A dev who knows ERC-20 already knows PRC-20 — there is nothing new to learn to build on PRANA.

3 · PRC-20 — in one line

A PRC-20 is an ERC-20 deployed to PRANA. Same interface, same wallets, same tooling; chain id 712217. We give it its own name the way TRON has TRC-20 and BNB Chain has BEP-20 — not because it's a different technical standard, but because it's our chain's tokens, and a name people can hold onto. KULA (the DeFi collateral coin), the wrapped bridge tokens wMELEK / wVKBT / wCURE, and any token you deploy on PRANA are PRC-20s.

The chain is open — mint your own

We want other people making token mints here. A chain is only alive when people build on it, so issuance on MELEK and PRANA is permissionless — you don't need our permission, and there are two on-ramps depending on how much code you want to touch:

Whatever you mint is a first-class citizen: tradeable on KulaSwap, usable as CDP collateral, bridgeable. The point of the Academy is to hand you the whole on-ramp.

4 · Make one (the modern stack)

Don't write the six functions yourself — inherit the audited OpenZeppelin ERC20 base and add a name, symbol, and supply. The whole token:

import "@openzeppelin/contracts/token/ERC20/ERC20.sol";

contract MyToken is ERC20 {
    constructor() ERC20("My Token", "MYT") {
        _mint(msg.sender, 1_000_000 * 10 ** decimals());
    }
}
  1. Write & compile in Remix (in-browser, nothing to install) or Hardhat / Foundry locally.
  2. Add PRANA to MetaMask — one tap from the Akasha wallet page (RPC + chain id 712217).
  3. Deploy to PRANA and confirm it on PRANAScan. You now hold a PRC-20 you created.

The same steps deploy to Ethereum, TRON, or BNB Chain — only the network in MetaMask changes. That portability is the lesson.

5 · Clones & factories — cheap tokens at scale

Deploying a fresh contract per token costs gas. The EIP-1167 minimal proxy ("clone") deploys a tiny stub that delegates to one shared implementation — so a factory can mint hundreds of tokens cheaply. In 2026 you do this with OpenZeppelin's Clones library (Clones.clone() / cloneDeterministic()), not a hand-rolled factory. It's how token-launch platforms work, and how PRANA's own token factory keeps issuance affordable.

⚠ Don't follow 2018 tutorials into dead tools

Most "make an Ethereum token" guides online are from the 2017–2018 boom and point at tools that are now retired. The ideas still hold; the tools changed. If a tutorial says the left, use the right:

2018 tutorial says…Use in 2026
TruffleFoundry (forge/anvil/cast) or Hardhat
Ganache / ganache-cliAnvil or Hardhat node
Mist / Ethereum WalletMetaMask (Mist was discontinued 2019)
Parity / OpenEthereumGeth · Nethermind · Reth
web3.jsethers v6 or viem
SafeMath librarynothing — Solidity 0.8+ checks overflow itself
ConsenSys/Tokens · TokenMint · POA wizardOpenZeppelin Contracts v5 + the OZ Wizard
hand-rolled clone-factoryOpenZeppelin Clones
OraclizeChainlink
ICO launchpads (TokenMarket, Eidoo…)a dead + legally radioactive category — skip it

Beginner path: OpenZeppelin WizardRemix → MetaMask. Then graduate to Foundry. Read Solidity by Example (official) and the Foundry Book, not the Medium/Truffle-era walk-throughs.

6 · Where PRC-20s live in the ecosystem

Beyond tokens — build apps, social, games

A token is the first thing you make on a chain, not the last. The same EVM skills — Solidity, Remix, MetaMask, a wallet connection — build everything else, and the same "learn-once, deploy-anywhere" rule holds. Where to go next:

The 2018 thread below is a snapshot of people trying all of this at once — token mints, social apps, games, launch platforms. Most of those projects are gone; the idea — anyone can build on an open chain — is exactly what we're handing you the tools to actually do.

Credit & further reading

This lesson grows out of a long-running community resource — "Let's create some Ethereum clones" (Tokenista, Bitcointalk, 2018), a 6-page pile of token-creation, clone-factory and dApp resources. We've kept what still holds in 2026 (Remix, MetaMask, OpenZeppelin, EIP-1167, Solidity) and swapped the dated tools for their modern equivalents (Hardhat / Foundry for Truffle; ethers v6 / viem for old web3).

Library of Ashurbanipal: The ERC-20 standard · Smart contracts · The EVM · KulaSwap & PRANA DeFi. The other kind of token (MELEK-Engine / SCOT): Make a token →