julien/lovepublic Fork 0
905615022f33edfe91842b3dd95650f8fe3e1083
Commits
Clone
git clone https://git.rickub.com/julien/love.git
git clone ssh://git@rickub.com/julien/love.git

Host key fingerprint (ed25519): SHA256:iycHnxEyq0Q7uyVpB7JlznP0G7JrTPXLYRcAU5CSLhc — verify it before your first connect.

README.md · 63 lines · 1.4 KBmarkdown Blame HistoryRaw
document setup b1c9b0d julienbrg 10h ago1# love
2
3A [Foundry](https://getfoundry.sh) project.
4
update docs for erc20 69c46a2 julienbrg 10h ago5`Love` (`LOVE`, 18 decimals) is a basic ERC-20 built on
6[OpenZeppelin](https://github.com/OpenZeppelin/openzeppelin-contracts), with one
7deliberate twist: `mint` has **no access control**.
8
9```solidity
10function mint(address to, uint256 amount) external;
11```
12
13Anyone can mint any amount to any address. Supply starts at zero and is
14unbounded, so the token carries no economic value — it is a faucet / demo token.
15Do not deploy it to mainnet expecting otherwise.
document setup b1c9b0d julienbrg 10h ago16
17## Setup
18
19```shell
20forge install
21cp .env.example .env
22```
23
24## Usage
25
26```shell
27forge build # compile
28forge test # run tests
29forge test -vvv # with traces
30forge fmt # format
31forge coverage # coverage report
32forge snapshot # gas snapshot
33anvil # local node
34```
35
36## Deploy
37
38```shell
39forge script script/Love.s.sol:LoveScript \
40 --rpc-url base_sepolia \
41 --account "$DEPLOYER_ACCOUNT" \
42 --broadcast \
43 --verify
44```
45
46Drop `--broadcast` for a dry run.
47
48## Layout
49
50| Path | Contents |
51| --------- | ------------------- |
52| `src/` | Contracts |
53| `test/` | Tests |
54| `script/` | Deployment scripts |
55| `lib/` | Dependencies |
update docs for erc20 69c46a2 julienbrg 10h ago56
57## Mint
58
59```shell
60cast send <LOVE_ADDRESS> "mint(address,uint256)" <RECIPIENT> 1000000000000000000 \
61 --rpc-url base_sepolia \
62 --account "$DEPLOYER_ACCOUNT"
63```