A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | ||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | Scope | ||||||||||||||||||
2 | |||||||||||||||||||
3 | # | Request / Feature | Type | Description | MoSCoW | User Path | Estimate | Existing functionallity | FE | BE | Design | DevOps | Job to be done | Blockers / Dependancies | Note | People | Questions | ||
4 | Wallet support | Feature | Enable 3 major “desktop [Chrome] extension” wallets must work (Polkadot.js, Talisman, Subwallet) | 01 Must | ISBAT connect to DEDswap / DOTswap with Polkadot.js, Talisman, Subwallet ISBAT install wallet extension (one of the three above) if I don't have it already | None | Completed | / | |||||||||||
5 | Faster wallet connect | Improvement | Current wallet connect is too slow and must be faster together with reading asset balances | 01 Must | / | One week | Research Public RPCs: Create Round Robin algorythm for faster response In case public RPCs are not reliable, research Private RPC: what are the options and how fast they are Implement chosen option and improve wallet connect and asset fetching speed Create function to request balances of DOT, DED, USDT, USDC and to faster the wallet connect | Risks: private key reveal if we are using private RPC | 1 Frontend | Q: Is it important for you if the RPCs are private or public? A: Public are fine | |||||||||
6 | [Dashboard] Main page: token balances | Feature | Page for user to overview his assets. Total USD value presentation of user's assets on Polkadot Asset Hub. Calculate based on USD prices of USDC, USDT, DOT and DED. Tier tokens: Top assets (from whitelabeled chains - ASTR, GLMR) , Other Assets (non-standard assets) List all assets that have pools on Asset Hub and show its USD price Present DOT value in USD and make it visible on this page. Someone without DOT or USDC or DED or USDT should be able to see “0” above. | 01 Must | ISBAT view balances of my assets on Polkadot Asset Hub with the prioritized top assets: USDT, USDC, DOT and DED (even if it's zero) ISBAT view my USD total amount summarized of those 4 assets. ISBAT view USD value of all listed tokens with DOT value visible on top of the page. ISBAT view other tokens from my wallet below the tier 1 as Ohter Assets. | Two week | Create algorythm that calculates DOT price based on the higher liquidity in the DOT-USDC / DOT-USDT pool (1d) Read and present USDC, USDT, DED and other tokens (1d) Create sum function to calculate my total Asset balance in USD (1d) Create design screens ? Implement design on FE Wire flows Test | Have the liquidity pools for chosen token pairs | USD value obligatory for tokens: USDC, USDT, DOT, DED - and any other that is fetched to USD? | 1 Product Designer 1 Frontend engineer 1 Backend engineer | Do we only present tokens that have pools with DOT on Asset Hub or all other assets as well? | ||||||||
7 | Crosschain transfers | Feature | This feature aims to transfer DOT between the Polkadot Relay chain and Polkadot AssetHub. - Use “Cross in” (transferring DOT into Assethub) vs “Cross out” (transferring DOT out of Assethub). - Confirmation box for a summary of the transaction with transparent fees. - Notifications: pending, success, error states. | 01 Must | ISBAT send DOT token crosschain: between Polkadot Relay Chain and Polkadot Asset hub ISBAT choose the source and destination chain for that transfer (Polkadot Asset Hub / Polkadot) ISBAT change destination/source chain I am sending from/to (cross in / cross out) ISBAT see the balance of that token on Source chain. ISBAT type the amount I want to transfer. ISBAT view detailed fee breakdown and transfer type (XCM). ISBAT see confirmation window summarizing transaction (amount, token, chains, fees, transfer type). ISBAT cancel or confirm transaction. ISBAT view status of my transaction - pending / success with short description of transaction (e.g. "cross in 2 DOT") ISBAT view clear error if transaction was unsuccessful and get instructions on how to resolve it. | Two week | Create UI for asset transfer between the chains Call extinct for teleport functionality to transfer tokens / Use ParaSpell for transfering assets (XCM) Limit tokens traded Develop FE Wire the flow Test | Crosschain transfer XCM fees Swap adjustments (add tokens USDT, USDC, DED to Asset hub) | Later on upgrade between whitelisted chains - Astar, Moonbeam Spike on USDC on Polkadot Asset Hub | 1 Frontend engineer 1 Product Designer | |||||||||
8 | Crosschain transfers - MAX | Feature | When sending tokens crosschain, user should be able to use MAX function and algorythm should calculate what is the maximum of selected asset he can send. | 01 Must | ISBAT select MAX in the corsschain box and send maximum amount of specific token crosschain. | None | Included as basic part of the crosschain feature. | / | |||||||||||
9 | Crosschain transfers - XCM Fees | Feature | Research and write algorythm of the calculation of XCM fees | 01 Must | ISBAT see exact fee structure and how much are the XCM transfer fees | Two week | Polkadot js - research how they are calculating fees for teleport function Explore other solutions as well Create algorythm for calculation | Polkadot js - research how they are calculating fees for teleport function | 1 Backend | ||||||||||
10 | Error clasification and handling | Improvement | Production Ready Error Handling Find the most common user errors, make them clear for the user and classify them in the way we know how to help resolve each error. | 01 Must | ISBAT view clear error of failed transactions, udnerstand why they happened and get instructions on how to resolve it. | Two week | Profound testing and systematization of errors Update current error handiling framework and improve project documentation Telegram group support | XCM errors - transaction that failed on other chain Bugs & Testing of the app | 1 Frontend engineer 1 Backend | ||||||||||
11 | Improve MAX function in Swap | Improvement | Make MAX feature faster and don't show it when there is no both tokens in the pair selected. | 01 Must | / | Two week | Update current MAX algorythm Explore if there is a limit for public RPC calling | 1 Backend engineer | Please, recheck once again if this is necsecary | ||||||||||
12 | Notification improvements | Improvement | There is too much noise with current notification. Make it simple - pending and completed for all transactions | 01 Must | / | 3 days | Change design Remove existing numerous notifications when transacting Implement new simpler notifications | 1 Frontend engineer | |||||||||||
13 | Production environment set up | | Align on production infrastructure set up and implement. | 01 Must | One week | 1 Dev Ops | |||||||||||||
14 | Wallet metadata | Improvement | Wallet metadata update is essential and user should be notified once update is desired. | 02 Should | ISBAT update metadata for better user experience, whenever medatada is ready for update. | One week | Research on metadata - check current metadata updates on different Polkadot wallets UI changes - design & pop up Implementation | 1 Frontend engineer | |||||||||||
15 | [Dashboard] Main page: add swap functionallity as a pop up | Feature | In the list of assets, there should be an option to click swap and to open swap box prefilled with that asset's detials. | 02 Should | ISBAT click directly SWAP function for any visible asset and get the prepopulated swap box to transact | One week | Design Move swap box component in pop-up Forward token parametars to prefill (use from existing add liquidity function) Wire flows Test | 1 Frontend engineer | |||||||||||
16 | Crosschain transfers - Avaliable balance | Feature | When sending tokens crosschain, user should be able to see new avaliable balance on the destination chain after transaction | 02 Should | ISBAT see what is the avaliable balance that will destination accoun recieve | None | Included in XCM Fees research as core of this calculation are XCM fees. | / | |||||||||||
17 | Adjust existing Swap feature | Improvement | Limit tokens traded to USDC, USDT, DOT, DED Add price Add route Liquidity Provider Fee | 02 Should | As a DEDswap user, I want to be able to swap, add and remove liquidity for coins DOT, DED, USDT, USDC and their belonging pools (DOT-DED, DOT-USDT) | 3 days | Create a filter and show only pools DOT-DED, DOT-USDC, DOT-USDT on Polkadot Asset Hub. Create filter for user’s wallet what tokens are shown and can be traded. Add USDT and USDC via ParaSpell. Add and present token icons | 1 Frontend engineer | Is route important and why? What is it in our case - if it's always Polkadot Asset hub? | ||||||||||
18 | Update fee structure on all features (swap, crosschain, pools etc.) | Improvement | Update fee structure to be transparent and accurate | 02 Should | / | One week | 1 Frontend engineer | ||||||||||||
19 | Pointers | Improvement | Add important links | 02 Should | / | None | |||||||||||||
20 | DEDswap and DOTswap rebranding | | Do simple rebranding, keeping the UX as it is with smaller changes in flows due to new features. | 02 Should | / | Two week | 1 Product Designer 1 FE | ||||||||||||
21 | Profile dropdown: Switching wallet accounts | Feature | Showing the profile dropdown in the right top corner. By clicking on it, wallet connected should pop up with account selection, so user can switch between accounts. Like Bifrost | 04 Won't do | ISBAT click on my wallet profile ISBAT view wallet connected and chosen account in use ISBAT change account in use ISBAT log out | 3 days | Create UI design Implement on FE of the app Wire flows Test | 1 Frontend engineer 1 Product Designer | |||||||||||
22 | Mobile optimization of the app | Improvement | Make app mobile optimized so it can be at least overview of DEX via mobile device | 04 Won't do | / | Two week | Mobile Design | 1 Frontend engineer | Is it a question to be functional on mobile or just to see the app and how it looks? Not even Bifrost is functional via mobile, only user can see how it looks. We can create a banner that says about the project but also tells that mobile is not supported and please use desktop | ||||||||||
23 | Ledger wallet | Feature | Make sure our implementation will enable this in future, so it's upgradeble once the time comes to add Ledger wallets | 04 Won't do | / | None | Spike: Ledger (not priority) | For future versions of the app | / | ||||||||||
24 | |||||||||||||||||||
25 | EXISTING FEATURES | ||||||||||||||||||
26 | Swap | Feature | Swap tokens from existing liquidity pool pairs | 01 Must | None | ||||||||||||||
27 | Create a new liquidity pool | Feature | Creation of new pool between DOT and any other token user has in wallet on Asset Hub | 03 Could | / | None | / | ||||||||||||
28 | List all liquidity pools | Feature | See all avaliable liquidity pools | 03 Could | / | None | / | ||||||||||||
29 | Add liquidity to the existing pool | Feature | Add liquidity and become liquidity provider | 03 Could | / | None | / | ||||||||||||
30 | Remove liquidity from the pool | Feature | Remove liquidity if you already added some and became liquidity provider | 03 Could | / | None | / | ||||||||||||
31 | / |