npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@censo/eth-contracts

v0.1.8

Published

Censo ethereum contracts

Downloads

13

Readme

Censo Ethereum Contracts

Usage

Install requirements with yarn:

yarn

Build:

yarn build

Deployments

yarn hardhat deploy

Documentation

The contracts here are part of Censo's implementation of Gnosis' Safe.

Censo uses a two-level structure with "vaults" that control the configuration of one or more individual "wallets", each of which have their own policy for controlling transfers and dapp transactions. In this model, both vaults and wallets are implemented as Safes; the owners of the vault Safe control both its configuration as well as the configuration of that vault's wallets.

This is implemented by configuring the wallets with a guard which prohibits any transactions that might alter the state of the wallet Safe (thus preventing the owners of the wallet from configuring it) and by enabling the vault Safe as a module on the wallet Safe, which allows the owners of the vault to configure the wallets.

Censo has also implemented additional features on wallets: whitelisting, the ability to have a wallet which can do basic transfers (including ERC-20, ERC-721 and ERC-1155 transfers) but not general dapp transactions, and the ability to associate a name hash with the wallet.

  • contracts/CensoFallbackHandler.sol - fallback handler implementing whitelisting and name hash functions
  • contracts/CensoGuard.sol - default guard for a wallet with whitelisting off and dapp transactions allowed
  • contracts/CensoWhitelistingGuard.sol - guard with whitelisting on and dapp transactions allowed
  • contracts/CensoTransfersOnlyGuard.sol - guard with whitelisting off and dapp transactions not allowed
  • contracts/CensoTransfersOnlyWhitelistingGuard.sol - guard with whitelisting on but no dapp transactions
  • contracts/CensoRecoveryGuard.sol - guard for a recovery contract which is only allowed to call execTransactionFromModule(swapOwners())

Audits / Formal Verification

Security and Liability

All contracts are WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

License

All smart contracts are released under GPL-3.0