- Creating your own pool
- Displaying/calculating pool slippage, expected tokens returned, pool ownership percent
- Generalized UI to support pools with more than 2 tokens
- Ability to get list of available pools
- Ability to use multiple pools to fulfill a single token swap order
- Mobile dApp
- CLI development
- Governance Token
Currently, a single BPool is deployed on Mainnet. There is a script to deploy a pool & then set the pool up with an initial supply of tokens, the token weights, etc. One main draw of Balancer is being able to create your own pool with whichever tokens you want. In order to have a complete decentralized app, BFactory needs to be deployed to Mainnet as well. BFactory is a smart contract that handles the creation of BPools and should also keep track of the existing pools. There is also a notion of public & private pools; more research on Balancer needs to be done on this topic.
- BFactory deployment
- Contract improvements for SeeSwap usage
- List of pools
- Pool names
- ...
- Private vs Public Pools
Existing Demo dApp here. The dApp is missing some basic features/UI elements for a better user experience, such as error messages and transaction confirmation box. The code also needs to be generalized to work with any pool, regardless the number of tokens in the pool.
- Create pool
- Display list of pools
- Generalized to work with any pool
- Display slippage & expected exchange tokens when swapping
- Display pool ownership
- Error messages
- OneWallet support
- Support to view without having any Wallet extensions
The developer can also opt to create their own dApp from scratch, instead of continuing to develop the existing dApp.
The stretch goal for the exchange is to add the ability for users to use the exchange to swap tokens optimally without having to manually deal with multiple transactions to different pools. Balancer does this with their SOR (Smart Order Router), which was not in the scope for the SeeSwap Hackathon project, so no work has been done on this front.
The SeeSwap TG group mentioned interest in a Mobile app. However, this should be a stretch goal. The dApp could be designed to work on mobile, as well, but will need a way to figure out how to use send transactions without any Chrome extensions.
- Should support all features that the dApp does
Unsure about the interest in continued development of the command line interface for SeeSwap, but it would probably attract users that are interested in scripting their arbitrage. Like the demo dApp, the current CLI is hardcoded for the demo pool, so it will need to generalized to work with different pools.
- Get list of all pools
- Create pools
- Generalize to work with any pool
The governance token should be an HRC20. Balancer mints their BAL token and gives it out to their users that provide liquidity to their pools. The BAL token can be traded on exchanges as well as used to vote on new Balancer features. Not much research has been done on this front. However, this should be developed last if there is interest in the continued development of SeeSwap from the users & developers.
- Balancer Smart Contracts: https://github.com/balancer-labs/balancer-core
- Balancer Token Exchange UI: https://github.com/balancer-labs/balancer-exchange
- Balancer SOR (Smart Order Router): https://github.com/balancer-labs/balancer-sor
- Balancer Pool Management UI: https://github.com/balancer-labs/pool-management-vue
- BAL Mining scripts: https://github.com/balancer-labs/bal-mining-scripts
- Balancer API Docs: https://docs.balancer.finance/smart-contracts/api
- SeeSwap Smart Contracts: https://github.com/janet-harmony/balancer-core
- SeeSwap CLI: https://github.com/harmony-one/seeswap
- SeeSwap dApp: https://github.com/harmony-one/seeswap-pool
We need to add also and external Audit to the milestones, to be sure that everything is as expected