GithubHelp home page GithubHelp logo

kaneki-ken03 / yield-utils-v2 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from yieldprotocol/yield-utils-v2

0.0 0.0 0.0 2.35 MB

Utility contracts for Yield v2

License: MIT License

Shell 0.18% JavaScript 0.03% TypeScript 1.59% Nix 0.02% Makefile 0.07% Solidity 98.11%

yield-utils-v2's Introduction

Yield Utils

This repo contains minimal or updated versions of popular smart contracts used as utilities.

Access

  • AccessControl: Hierarchical access control with function signatures as roles
  • Ownable: Contract access control to one address

Cast

Safely cast between types.

  • Cast+Origin+Destination

Math

Fixed point math with 18 decimals. Multiplication and division, rounded down as default, also rounded up as option.

Token

  • ERC20: Minimal ERC20 token inspired on DSToken
  • ERC20Permit: ERC20 with ERC25612 off-chain signature support
  • ERC20Rewards: ERC20Permit embedding rewards of another ERC20 using the Unipool pattern
  • SafeERC20Namer: Derive ERC20 names safely regardless of underlying ERC20 implementation
  • MinimalTransferHelper: transfer ERC20 tokens safely regardless of underlying ERC20 implementation
  • TransferHelper: Same, but also transfer Ether and trasferFrom ERC20

Utils

  • AddressStringUtil: Convert addresses to strings
  • IsContract: Return if an address contains bytecode
  • RevertMsgExtractor: Retrieve a revert message from a generic call return value
  • Timelock: Schedule batched transactions to be executed after approval
  • EmergencyBrake: Register AccessControl permissioning patterns to isolate contracts on emergencies
  • Relay: Group transactions to be executed on a single external call

Audits

C4 audit - commit: 78693c5

Audit of Timelock.sol at 8ff8841 by Mudit Gupta: https://twitter.com/Mudit__Gupta/status/1429463910298525701?s=20

Audit of EmergencyBrake.sol 6e37565 by devtooligan: https://hackmd.io/@devtooligan/YieldEmergencyBrakeSecurityReview2022-10-11

License

All files in this repository are released under the MIT license.

yield-utils-v2's People

Contributors

alcueca avatar calnix avatar hashedmae avatar devtooligan avatar sabnock01 avatar iamsahu avatar uivlis avatar transmissions11 avatar sblowpckcr avatar egillh210 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.