# love A [Foundry](https://getfoundry.sh) project. `Love` (`LOVE`, 18 decimals) is a basic ERC-20 built on [OpenZeppelin](https://github.com/OpenZeppelin/openzeppelin-contracts), with one deliberate twist: `mint` has **no access control**. ```solidity function mint(address to, uint256 amount) external; ``` Anyone can mint any amount to any address. Supply starts at zero and is unbounded, so the token carries no economic value — it is a faucet / demo token. Do not deploy it to mainnet expecting otherwise. ## Setup ```shell forge install cp .env.example .env ``` ## Usage ```shell forge build # compile forge test # run tests forge test -vvv # with traces forge fmt # format forge coverage # coverage report forge snapshot # gas snapshot anvil # local node ``` ## Deploy ```shell forge script script/Love.s.sol:LoveScript \ --rpc-url base_sepolia \ --account "$DEPLOYER_ACCOUNT" \ --broadcast \ --verify ``` Drop `--broadcast` for a dry run. ## Layout | Path | Contents | | --------- | ------------------- | | `src/` | Contracts | | `test/` | Tests | | `script/` | Deployment scripts | | `lib/` | Dependencies | ## Mint ```shell cast send "mint(address,uint256)" 1000000000000000000 \ --rpc-url base_sepolia \ --account "$DEPLOYER_ACCOUNT" ```