Blockchain Dev: Minimal ERC20

Tiny ERC20-like example.

// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.20;

contract MiniERC20 {
    string public name = "Mini";
    string public symbol = "MIN";
    uint8 public decimals = 18;
    mapping(address => uint256) public balanceOf;

    event Transfer(address indexed from, address indexed to, uint256 value);

    function mint(address to, uint256 amt) external { balanceOf[to] += amt; emit Transfer(address(0), to, amt); }
    function transfer(address to, uint256 amt) external returns (bool) {
        require(balanceOf[msg.sender] >= amt, "bal");
        balanceOf[msg.sender] -= amt; balanceOf[to] += amt; emit Transfer(msg.sender, to, amt); return true;
    }
}