Polywrap: Improving how dApps Integrate with Uniswap v2

A project sponsored by UNI Grants and Polywrap DAO

The Polywrap DAO is thrilled to announce that we’ve received a grant from the Uniswap Grants Program to build the Uniswap v2 Polywrapper.  The Uniswap wrapper aims to be a substantial improvement over Uniswap’s existing JavaScript SDK.  We’re excited to give you a sneak peek at what we’re building for the UNI community and the future of Web3 protocol integration as a whole!

But first, a quick intro of our team.

Polywrap was first conceived at HackFS in August 2020 by Jordan Ellis, Cesar Brazon, Roberto Henriquez, and Ori Shimony.  These four engineers shared the dream of making the Web3 development experience as easy as Web2, without sacrificing decentralization.  

Polywrap was selected as a finalist at EthGlobals’ HackFS Hackathon, giving the project the momentum it needed to grow into a DAO with 60+ members, attract talented developers and some amazing launch partners, including: WalletConnect, Fleek, Gnosis, 3Box Labs, Pocket Network, Torus, and many more.


So what is Polywrap?

Polywrap is a developer toolchain that makes it easy to integrate protocol business logic into Web3 applications.  The Uniswap Polywrapper is different from the Uniswap JS SDK in the following ways:

What are we building for Uniswap?

  1. We’re building the same functions you’ve come to love with the v2 JavaScript SDK (like fetching token data or executing trades) in the form of Polywrap queries and mutations, along with its documentation.

  2. A hands-on demo to show you what the Uniswap Polywrap is all about.

A sneak peak of the Polywrap development experience.

NOTE: Polywrap is in pre-alpha, and should not be used for production applications (yet). Please see our GitHub releases for status updates.

Here’s an example showing how easy it will be to integrate the Uniswap Polywrap into a JavaScript app.

  1. Install the Polywrap client to your dApps package.json

  1. Import and instantiate the client with an Ethereum provider

  1. Query the Uniswap Polywrap

And that’s it! You now have all you need to access any of Uniswap’s v2 functionality (in this case, `fetchTokenData`).

If you’re building in React, we have you covered with our React wrapper. Checkout the @web3api/react package on npm.


What are some things on our roadmap?

1. AssemblyScript Polywrap (Today)

For our alpha release, we’re making AssemblyScript the first language for building Polywrappers. Along the way, we’ve made important contributions to the AssemblyScript ecosystem:

  • BigInt class for AssemblyScript

  • BigFloat (Decimal) class for AssemblyScript, which allows exact calculations for token swaps in solidity smart contracts

2. Polywrap Alpha Release

We’re nearing our Alpha release, which will be the first semi-stable version of the toolchain ready for the world to start experimenting with.

3. The Launch Partner Program (Today)

We are working alongside some of the most exciting Web3 projects today to refine our toolchain.  Our launch partners have been invaluable in testing out Polywrap development and providing feedback.  Here is a quick shoutout to those who have already joined the program:

  • WalletConnect

  • Fleek

  • Razor

  • 3Labs

  • Abridged

  • MANTRA DAO

  • Rockside

  • Torus

  • Aleph.im

  • Pocket Network

  • Gnosis

  • DXdao

  • Squad Games

  • Gelato

  • Zero

  • Jarvis

… And many more to join the movement!

4. Future languages (Late Q2 2021)

We’re excited to announce that Rust will be the next language that protocols can use to build their Polywrappers, followed potentially by Go (TinyGo) later down the road.

Rust has always provided an incredible development experience, and with its great support for WebAssembly, we feel that it’s the perfect language to build Polywraps with. 

5. The Web3Hub Pre-alpha (Late Q2 2021)

The Web3Hub is a user interface for all-things Polywrap!  It’s a simple-to-use application where users can search, view, and use any wrappers. Additionally the application will help developers deploy their own Polywrapper with a few simple clicks.


Conclusion

Our team is working diligently on the Uniswap v2 Polywrapper and we can’t wait to show you the results. ⚡️

In the meantime, take action by clicking below:

🛰 ~ Join Discord

📓 ~ Read the Docs

👀🔥 ~ We're hiring Rust Developers

📺 ~ Watch the ETH Denver Presentation

Thanks for being part of this awesome journey ~