Skip to content

🐍 snekmate v0.0.1 🥳

Compare
Choose a tag to compare
@pcaversaccio pcaversaccio released this 06 Mar 10:28
· 346 commits to main since this release
bc70a3b

Summary

I am just fucking proud and so happy to release the first official version of 🐍 snekmate 🥳!

Honestly, what a feat:

  • 582 commits
  • 6,471 source lines of 🐍Vyper code
  • 15,137 source lines of Solidity test code

🙏🏻 Special thanks go to all the contributors who supported me during this journey, you're all badass!

image

🎛 Installation

We offer three convenient ways to install the 🐍 snekmate contracts:

1️⃣ Foundry

You can install 🐍 snekmate via submodules using Foundry with:

forge install pcaversaccio/snekmate

2️⃣ PyPI

You can install 🐍 snekmate from PyPI with:

pip install snekmate

You can use pip install snekmate -t . to install the contracts directly into the current working directory!

3️⃣ npm

You can install 🐍 snekmate from npm with:

npm install --save-dev snekmate

Or if you are using Yarn:

yarn add --dev snekmate

Full Changelog

The following 🐍Vyper contracts are available within 🐍 snekmate:

  • Authentication
    • Ownable: Owner-based access control functions.
    • Ownable2Step: 2-step ownership transfer functions.
    • AccessControl: Multi-role-based access control functions.
  • Extensions
    • ERC4626: Modern and gas-efficient ERC-4626 tokenised vault implementation. (#74)
  • Tokens
    • ERC20: Modern and gas-efficient ERC-20 + EIP-2612 implementation. (#17)
    • ERC721: Modern and gas-efficient ERC-721 + EIP-4494 implementation. (#20)
    • ERC1155: Modern and gas-efficient ERC-1155 implementation. (#31)
  • Utility Functions
    • Base64: Base64 encoding and decoding functions. (#47)
    • BatchDistributor: Batch sending both native and ERC-20 tokens.
    • CreateAddress: CREATE EVM opcode utility function for address calculation.
    • Create2Address: CREATE2 EVM opcode utility functions for address calculations.
    • ECDSA: Elliptic curve digital signature algorithm (ECDSA) functions.
    • SignatureChecker: ECDSA and EIP-1271 signature verification functions.
    • EIP712DomainSeparator: EIP-712 domain separator.
    • Math: Standard mathematical utility functions. (#74, #77, #86)
    • MerkleProofVerification: Merkle tree proof verification functions. (#30)
    • Multicall: Multicall functions.