Welcome to the ERC20 Token Project! This project provides a robust framework for creating and managing an ERC20 token on the Ethereum blockchain. Designed with developers in mind, this implementation offers straightforward, customizable token functionality for decentralized applications and tokenized ecosystems.
- ERC20 Standard Compliant: Fully compatible with ERC20 standards, ensuring interoperability.
- Mintable & Burnable: Allows token minting and burning functionality, useful for dynamic supply management.
- Automated Testing: Built-in unit tests to verify all token functionalities.
- Customizable Parameters: Flexible token supply, name, and symbol settings.
- Deploy the Token: Initialize the contract with your desired token name, symbol, and initial supply.
- Mint & Burn: Authorized accounts can mint new tokens or burn tokens from circulation.
- Token Transfers: Tokens can be sent between accounts following standard ERC20
transfer
andapprove
functions. - Testing: Comprehensive testing suite ensures all token functions operate as expected.
- Smart Contracts: Written in Solidity, using the Foundry framework.
- Testing Framework: Forge for efficient, automated unit testing.
- Deployment & Scripting: Forge scripts for streamlined contract interactions.
.
├── .github/workflows # GitHub actions for CI/CD
├── lib # External libraries and dependencies
├── script # Deployment and interaction scripts
├── src # Core smart contracts
│ └── ERC20.sol # ERC20 token contract
├── test # Unit and integration tests
├── .gitignore # Ignored files
├── README.md # Project overview (this file)
├── foundry.toml # Foundry configuration
├── Makefile # Helper commands for build/test
- Clone the repository:
git clone https://github.com/Steiner-254/foundry-erc20.git
cd foundry-erc20
- Ensure you have Foundry installed. If not, install it using:
curl -L https://foundry.paradigm.xyz | bash
foundryup
forge build
forge test
- To deploy the contract locally or on a specified network, use the deployment script provided:
forge script script/DeployToken.s.sol --broadcast --rpc-url <YOUR_RPC_URL>
- This project is licensed under the MIT License. See the LICENSE file for details.
- Project Developed By:
- Feel free to fork this repo, submit issues, or create pull requests! Contributions are always welcome.
Foundry
for providing an exceptional framework for Solidity development.OpenZeppelin
for setting standards in secure contract implementations.Ethereum Community
for supporting decentralized application development.Cyfrin Updraft
for the learning content aiding to this project development.
Happy Web3 Revolution <3