Giter Site home page Giter Site logo

tenderly / uniswap-playground-mode Goto Github PK

View Code? Open in Web Editor NEW
1.0 3.0 3.0 105.08 MB

Learn how to build a dapp playground mode for Uniswap's UI using Tenderly Forks.

License: GNU General Public License v3.0

JavaScript 0.49% TypeScript 99.38% HTML 0.13%
tenderly uniswap

uniswap-playground-mode's Introduction

Uniswap Labs Interface with Playground mode by Tenderly

This repository is demonstrating adding the Playground capability, using Tenderly Forks as the implementation.

โš ๏ธ This Uniswap fork is for demonstrational purposes only! The purpose of this Uniswap UI fork is to demonstrate the process of adding playground capabilities. As a proof of concept, it's not advised to use it in other purposes.

Notes:

  • Adding the playground mode required connecting to a dynamically generated network (Tenderly fork), which has chainID different from the chainID of the original chain. This mostly includes extension of static mappings addresses of ERC-20 tokens and Uniswap contracts (such as UniversalRouter). The addresses of these resources on the fork chain are the same as addresses on the original chain. See Addresses mapping and Tokens mapping.
  • Complete playground would involve putting Uniswap backend in the sandbox mode, which is out of scope.
  • The graphql schema and supported chains are hard-coded. This repository will remain out of sync compared to latest.

Running the app

To run the dapp, you'll need to edit the .env file and update your username, project slug, and the access key, and then

yarn start

From the official repository docs

codecov

Unit Tests Integration Tests Lint Release Crowdin

An open source interface for Uniswap -- a protocol for decentralized exchange of Ethereum tokens.

Accessing the Uniswap Interface

To access the Uniswap Interface, use an IPFS gateway link from the latest release, or visit app.uniswap.org.

Unsupported tokens

Check out useUnsupportedTokenList() in src/state/lists/hooks.ts for blocking tokens in your instance of the interface.

You can block an entire list of tokens by passing in a tokenlist like here

Contributions

For steps on local deployment, development, and code contribution, please see CONTRIBUTING.

PR Title

Your PR title must follow conventional commits, and should start with one of the following types:

  • build: Changes that affect the build system or external dependencies (example scopes: yarn, eslint, typescript)
  • ci: Changes to our CI configuration files and scripts (example scopes: vercel, github, cypress)
  • docs: Documentation only changes
  • feat: A new feature
  • fix: A bug fix
  • perf: A code change that improves performance
  • refactor: A code change that neither fixes a bug nor adds a feature
  • style: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
  • test: Adding missing tests or correcting existing tests

Example commit messages:

  • feat: adds support for gnosis safe wallet
  • fix: removes a polling memory leak
  • chore: bumps redux version

Other things to note:

  • Please describe the change using verb statements (ex: Removes X from Y)
  • PRs with multiple changes should use a list of verb statements
  • Add any relevant unit / integration tests
  • Changes will be previewable via vercel. Non-obvious changes should include instructions for how to reproduce them

Accessing Uniswap V2

The Uniswap Interface supports swapping, adding liquidity, removing liquidity and migrating liquidity for Uniswap protocol V2.

Accessing Uniswap V1

The Uniswap V1 interface for mainnet and testnets is accessible via IPFS gateways linked from the v1.0.0 release.

uniswap-playground-mode's People

Contributors

aballerr avatar callil avatar cartcrom avatar cbachmeier avatar chenxsan avatar chikeichan avatar cmcewen avatar crowdin-bot avatar dependabot[bot] avatar gbugyis avatar github-actions[bot] avatar grabbou avatar haydenadams avatar ianlapham avatar jackshort avatar jfrankfurt avatar just-toby avatar kayleegeorge avatar kennyt avatar lavalamp- avatar lint-action avatar lynnshaoyu avatar moodysalem avatar noahzinsmeister avatar pp-hh-ii-ll avatar rossbulat avatar tinaszheng avatar vm avatar willhennessy avatar zzmp avatar

Stargazers

 avatar

Watchers

 avatar  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.