huff-examples β’
Rigorously Tested, Demonstrative Huff Contracts Built with Huffmate.
Warning
These contracts are unaudited and are not recommended for use in production.
Although contracts have been rigorously reviewed, this is experimental software and is provided on an "as is" and "as available" basis. We do not give any warranties and will not be liable for any loss incurred through any use of this codebase.
Pre-requisites
Make sure you've installed the Huff Compiler as outlined in the Huff Docs.
TL;DR: curl -L get.huff.sh | bash && huffup
To verify your installation, run huffc --help
. This should print a list of available commands for the huff compiler cli.
Setup
To simplify the developer experience, Huff Language contributors created foundry-huff, a foundry library written in solidity. This allows you to test your Huff contracts in solidity and to utilize the Foundry stack for an ever-growing array of tooling.
To install dependencies, run:
forge install
To run tests, run:
forge test
You can also update dependencies with forge update
and format with forge lint
.
NOTE: These commands require Foundry to be installed. You can install it with curl -L https://foundry.paradigm.xyz | bash
.
Contracts
src
ββ ERC20 β "Mintable and Burnable ERC20 + EIP-2612 implementation"
ββ ERC721 β "Mintable ERC721 implementation"
Acknowledgements
These contracts were enabled by the following beautiful OSS libraries and tooling: