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

@aragonone/apps-token-wrapper

v1.0.1

Published

Aragon token wrapper app

Downloads

7

Readme

Token Wrapper

Token Wrapper is an Aragon app offering a checkpointed ERC20 token interface that is usable in Aragon Voting applications. Its purpose is to bridge external, "vanilla" ERC20 tokens to a checkpointed token.

Token holders of the outside token have the ability to wrap and unwrap their tokens to gain or decrease balance in this wrapped token.

🚨 Security review status: audited

The TokenWrapper contract was last professionally audited in 2020-01.

This version was published to aragonPM as token-wrapper.hatch.aragonpm.eth.

Caveats

In efforts to save gas costs and space to introduce the checkpointing, token amounts are limited to uint192. This should not pose a problem for any token, but as uint192 supports a very large range of numbers, but the TokenWrapper will stop accepting deposits once if it hits 2^192 - 1.

Installation Tutorial

Prerequisites: aragonCLI is needed to install the Token Wrapper into a DAO. Also note that you may have to change --env aragon:rinkeby for --env aragon:mainnet if the organization is on mainnet.

1. The first step is to install the Token Wrapper into your DAO:

dao install <DAO address> token-wrapper.hatch.aragonpm.eth --app-init-args <token address> <wrapped token name> <wrapped token symbol> --env aragon:rinkeby

The token address is the address of the ERC20 token you would like to "wrap" into an organizational token.

You can verify that the Token Wrapper app was installed into your organization with:

dao apps <DAO address> --all --env aragon:rinkeby

2. Next, create a permission for the TokenWrapper:

dao acl create <DAO address> <Token Wrapper app address> 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff <Voting app address> <Voting app address> --env aragon:rinkeby

You can get the installed Token Wrapper's address by listing the apps of your DAO with the following command:

dao apps <DAO address> --all --env aragon:rinkeby

At this point, you should be able to view the Token Wrapper app in the Aragon client. You can try it out by wrapping one of your tokens.

3. Then, create a new Voting app instance powered by your Token Wrapper:

dao install <DAO address> voting --app-init-args <Token Wrapper address> 500000000000000000 150000000000000000 604800 --env aragon:rinkeby

The command above uses the following voting parameters:

  • 500000000000000000: 50% minimum support
  • 150000000000000000: 15% minimum approval
  • 604800: Voting period of 7 days (604800 seconds)

4. And finally, create a permission for the new Voting app instance:

dao acl create <DAO address> <new Voting app address> CREATE_VOTES_ROLE <Token Wrapper address> <new Voting app address> --env aragon:rinkeby

This will let anyone who has wrapped at least one of their existing token to create a new vote, as well as vote in any open votes.