Coder Social home page Coder Social logo

algoworldnft / algoworld-swapper Goto Github PK

View Code? Open in Web Editor NEW
23.0 1.0 7.0 2.39 MB

⚡️ Free and trustless ASA swapper, powered by Algorand

Home Page: https://swapper.algoworld.io

License: GNU General Public License v3.0

JavaScript 0.91% TypeScript 95.76% Python 3.33%
algorand algoworld algoworldexplorer asa nextjs nft nfts pyteal swapper vercel-serverless

algoworld-swapper's People

Contributors

aorumbayev avatar github-actions[bot] avatar leetdev avatar mysco13 avatar renovate[bot] avatar snyk-bot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

algoworld-swapper's Issues

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Warning

These dependencies are deprecated:

Datasource Name Replacement PR?
npm react-tsparticles Unavailable
npm web3.storage Unavailable

Rate-Limited

These updates are currently rate-limited. Click on a checkbox below to force their creation now.

  • chore(deps): update dependency eslint to v9
  • chore(deps): update dependency eslint-config-next to v14
  • chore(deps): update dependency eslint-config-prettier to v9
  • chore(deps): update dependency eslint-plugin-prettier to v5
  • chore(deps): update dependency lint-staged to v15
  • chore(deps): update dependency node to v20 (node, @types/node)
  • chore(deps): update dependency prettier to v3
  • chore(deps): update github/codeql-action action to v3
  • chore(deps): update testing-library monorepo (major) (@testing-library/jest-dom, @testing-library/react)
  • chore(deps): update typescript-eslint monorepo to v7 (major) (@typescript-eslint/eslint-plugin, @typescript-eslint/parser)
  • chore(deps): update wagoid/commitlint-github-action action to v6
  • fix(deps): update dependency @algorandfoundation/algokit-utils to v6
  • fix(deps): update dependency @mui/x-data-grid to v7
  • fix(deps): update dependency @reduxjs/toolkit to v2
  • fix(deps): update dependency @vkruglikov/react-telegram-web-app to v2
  • fix(deps): update dependency axios-retry to v4
  • fix(deps): update dependency react-markdown to v9
  • fix(deps): update dependency react-redux to v9
  • fix(deps): update dependency react-toastify to v10
  • fix(deps): update dependency tsparticles to v3
  • 🔐 Create all rate-limited PRs at once 🔐

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Ignored or Blocked

These are blocked by an existing closed PR and will not be recreated unless you click a checkbox below.

Detected dependencies

github-actions
.github/workflows/ci.yml
  • actions/checkout v3
  • actions/setup-node v3
  • bahmutov/npm-install v1
  • pre-commit/action v3.0.0
  • wagoid/commitlint-github-action v5
  • codecov/codecov-action v3
.github/workflows/codeql-analysis.yml
  • actions/checkout v3
  • github/codeql-action v2
  • github/codeql-action v2
  • github/codeql-action v2
.github/workflows/e2e.yml
  • styfle/cancel-workflow-action 0.11.0
  • actions/checkout v3
  • actions/setup-node v3
  • bahmutov/npm-install v1
  • amondnet/vercel-action v25.1.1
  • actions/upload-artifact v3
.github/workflows/release.yml
  • actions/checkout v3
  • amondnet/vercel-action v25
npm
api/storage/package.json
  • typescript 5.1.6
  • web3.storage 4.5.4
  • @vercel/node 2.15.5
package.json
  • @algorandfoundation/algokit-utils ^2.2.0
  • @blockshake/defly-connect ^1.1.5
  • @daffiwallet/connect ^1.0.3
  • @emotion/cache 11.11.0
  • @emotion/react 11.11.1
  • @emotion/server 11.11.0
  • @emotion/styled 11.11.0
  • @fontsource/roboto 5.0.8
  • @hookform/resolvers 3.1.1
  • @mui/icons-material 5.14.0
  • @mui/lab 5.0.0-alpha.136
  • @mui/material 5.14.0
  • @mui/x-data-grid 6.10.0
  • @perawallet/connect 1.3.1
  • @reduxjs/toolkit 1.9.5
  • @txnlab/use-wallet ^2.1.0
  • @vkruglikov/react-telegram-web-app ^1.11.0
  • @walletconnect/modal-sign-html ^2.5.5
  • algosdk ^2.4.0
  • axios 1.4.0
  • axios-retry 3.5.1
  • next 13.4.13
  • next-pwa 5.6.0
  • nextjs-google-analytics 2.3.3
  • prop-types 15.8.1
  • react 18.2.0
  • react-dom 18.2.0
  • react-markdown 8.0.7
  • react-number-format 4.9.4
  • react-redux 8.1.1
  • react-toastify 9.1.3
  • react-tsparticles 2.11.0
  • react-use 17.4.0
  • swr 1.3.0
  • telegram-webapps-types 1.0.5
  • tsparticles 2.11.0
  • @commitlint/cli 17.6.6
  • @commitlint/config-conventional 17.6.6
  • @playwright/test 1.36.1
  • @testing-library/jest-dom 5.16.5
  • @testing-library/react 14.0.0
  • @testing-library/user-event 14.4.3
  • @types/jest 29.5.3
  • @types/node 18.16.19
  • @types/react 18.2.15
  • @types/react-dom 18.2.7
  • @typescript-eslint/eslint-plugin 5.62.0
  • @typescript-eslint/parser 5.62.0
  • autoprefixer 10.4.14
  • cd 0.3.3
  • commitizen 4.3.0
  • cz-conventional-changelog 3.3.0
  • dotenv 16.3.1
  • eslint 8.45.0
  • eslint-config-next 13.4.10
  • eslint-config-prettier 8.8.0
  • eslint-import-resolver-typescript 3.5.5
  • eslint-plugin-prettier 4.2.1
  • jest 29.6.1
  • jest-canvas-mock 2.5.2
  • jest-environment-jsdom 29.6.1
  • lint-staged 13.2.3
  • node-fetch 3.3.2
  • postcss 8.4.26
  • prettier 2.8.8
  • ts-jest 29.1.1
  • typescript 5.1.6
nvm
.nvmrc
  • node 18.16
pip_requirements
api/swaps/requirements.txt

  • Check this box to trigger a request for Renovate to run again on this repository

Swap not loading

https://swapper.algoworld.io/swap/7GHPEXDUFLP5ZGAFSRAWQNQEV3BKOXDB63KO6Z4YROIXA5JSL3TVNPMCWI/YJSR2I5QU7H4TCALVRVGAUIZQNJ5JZB2WYWBCCH6WWNDWAJ2SOFA3N3FLE

The card is in the escrow account so the swap is still active (at time of writing): https://algoexplorer.io/address/YJSR2I5QU7H4TCALVRVGAUIZQNJ5JZB2WYWBCCH6WWNDWAJ2SOFA3N3FLE

Same problem on both:

  • Mobile: Samsung Browser / Pera Wallet
  • PC: Edge Browser / MyAlgo Wallet

My wallet is connected on mainnet

  • 'You provide' box is empty
  • 'You receive' box is empty
  • 'CLICK TO RETRY LOADING' box. Clicking it results in very brief 'Loading, please wait' box then returns to 'CLICK TO RETRY LOADING' box

I successfully made a swap ~10 days ago on mobile

Unable to Logout

I had a login on the swapper via MyAlgo. I have been trying to logout, but no luck. The swapper still keeps me logged in, even after refreshing. Interestingly, the "active account" dropdown on my account doesn't show my wallet and it's empty. See attached screenshot.
Browser is Brave 1.50.121 for Mac (intel)
Screenshot 2023-05-03 at 10 36 48 AM

Swaps won't display on "My Swaps" page

Hey Al. Unfortunately the swaps from the Build Manager Wallet won't display on "My Swaps" page. See the screenshot attached. The public address is 75BMV3IXUMULXWV4JCCEET3OXZQU5J32J5CZ62A4DOH4HHF3KTFFX56ZZQ.
Same problem on mobile and Desktop (both Safari and Chrome). I also changed to IPFS provider, with no effect on the result. Thanks for your help!
Capture d’écran 2023-05-21 à 20 39 59

Feedback - some minor upgrades

I have few things that I miss from v1 of swapper.

  1. there is no disable swap button. If I want to disable it but keep my link and just enable it later I dont have that option yer. I can delete it but then I have to do whole new swap.

  2. v1 of swapper had this nice option where I would send multiple assets to the address and when I opened the swap screen I could see how many assets is there left. I can then track how many there is left in the swapper.

image

Setup foundation for unit and component tests that would work nicely with next.js, typescript and playwright

Issue have been completed by @leetdev, due to a bug on Gitcoin, bounty was paid out manually. Ticket is to be closed after response from Gitcoin support team.

Goal

  1. Setup and integrate jest and React Testing Library into algoworld-swapper that would work with typescript, nextjs and playwright without compatibility issues or over bloating config files at the root folder.

  2. After the integration is ready, implement at least 1 unit and component test for a page and helper method in utils folder of your preference to showcase this initial testing setup.

  3. After those initial tests are written, make sure to update the CI github action workflow to trigger unit tests on each PR.

  4. Make sure that test execution from CI produces artifacts for coverage reporting.

Further notes

When goal is completed, submit a PR against master branch, make sure to fill the PR template and describe the changes in detail. If you picked up this issue and something isn't clear simply leave a comment and tag me in the issue and Ill reach out with clarifications.

If you have proposal for an alternative framework for testing for this stack, please suggest in the comment to the issue.

Genaral feedback from the users

I have gradually switches some swaps that I use the most from old swapper to new one and I get a lot of issues reported by the users.

The general issue is mostly from the first click on the link that leads to a swap.
Most people just get this situation
image

they feel that the swap is empty.

Then I have to explain the they first need to connect wallet at switch to mainnet.

after they do that they need to go back to the link and enter the screen again
some people get this situation even tho the swap is active and had assets and funds

image

then they need to try and follow link to a swap again and it might work or not.

I feel there is some issue with entering swapper for the first time or when your wallet is not connected.

Fix bug in UI chain type switcher

Im just writing from some user feedback. The switch between mainnet and testnet is bit confusing.

it would either be better to put MainNet title insted of testnet. Or just have testnet activate when the slider is moved right and it turns green,

image

the way people think it works is that when you move slider right and it goes green it should activate testnet

Public swaps displayed for 5 wallets only

It looks like the public swaps are displayed for 5 wallets only. The other wallets can be found via the search field but are not displayed straight away on the main page of public swaps.

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.