@q-dev/dev-modules

2.5.5 • Public • Published

npm Coverage Status License: MIT GitPOAP Badge

Forked from dl-solidity-library/dev-modules

Changes

  • Added Context to all contracts to support integration with GSN and Meta Transactions

Solidity Development Modules by Distributed Lab

Elaborate solidity development modules library by DL.

The library consists of modules and utilities that are built with a help of Openzeppelin Contracts (4.9.2) and go far beyond mediocre solidity.

  • Implementation of Contracts Registry pattern
  • Versatile RBAC smart contract
  • Enhanced and simplified Diamond pattern
  • Heap based priority queue library
  • Memory data structures (Vector)
  • Optimized Incremental Merkle Tree data structure
  • Novel ReturnDataProxy contract
  • Utilities to ease work with ERC20 decimals, arrays, and sets

Overview

Installation

$ npm install @dlsl/dev-modules

The latest stable version is always in the master branch.

Usage

You will find the smart contracts in the /contracts directory. Feel free to play around and check the source code, it is rather descriptive.

Once the npm package is installed, one can use the modules just like that:

pragma solidity ^0.8.4;

import "@dlsl/dev-modules/contracts-registry/presets/OwnableContractsRegistry.sol";

contract ContractsRegistry is OwnableContractsRegistry {
    . . .
}

It is important to use the library as it is shipped and not copy-paste the code from untrusted sources.

License

The development modules are released under the MIT License.

Dependencies (2)

Dev Dependencies (0)

    Package Sidebar

    Install

    npm i @q-dev/dev-modules

    Weekly Downloads

    0

    Version

    2.5.5

    License

    MIT

    Unpacked Size

    168 kB

    Total Files

    41

    Last publish

    Collaborators

    • aostrun
    • tynuk
    • misterzett
    • tbltzk