Hello everyone this is dog,
(Disclaimer: I am a dog, I am a co-founder of Apollo DAO, Apollo DAO owns a sizable stake in Astroport. I am not a developer and will try to explain this in a way that all walks can understand)
I am here to propose a change to Astroport and gather feedback from the contributors, developers and users of the DEX. The change I am bringing up for discussion is to take 1 step back to take 2 steps forward. Currently Astroport uses the cw20 standard which is a token standard that uses smart contracts and adds complexity to the code which makes it harder for other projects (such as Apollo) to integrate with Astro. Out of our own experience as well as being stakeholders, We would like to see Astroport switch to the token factory module open sourced by Osmosis. This would make it easier to add liquidity as well as developer experience for products built on top.
Of course this is not a super easy transition. There would need to be changes to the core code as it would remove the cw20 smart contract logic to replace it with the token factory module. This would essentially “freeze” development on Astroport since such change would need an audit as well as time to integrate. In order for this to work each chain that Astroport is deployed on would need to upgrade to the newest version of TokenFactory module as released by Osmosis a few weeks ago. Also the pools would have to be migrated so the longer this waits the harder/more risk adds up. Much of the Cosmos dev standards are much more leaning towards the TokenFactory so I think that although it would be a slight pause it would allow Astro to free itself of some of the drawbacks of using cw20 in a world where most are using TF.
This would most likely have to be done in stages since there are prerequisite requirements to allow Xastro to function properly and Astro wants to maintain the same code base across all chain deployments.
Token Module makes IBC work better, indexing and front ends are better. The bank module is specifically for this and is better than a bunch of contracts. Here is some of the documentation around TokenFactory Token Factory | Osmosis Docs
To summarize the point of this document is to bring awareness to the possibility of transitioning Astroport from the cw20 Standard to the TokenFactory Module. It will take some time to implement and strategize so more in depth discussions with more people would be great. I am just looking to kick off the discussion so we can go over the pros and cons of this transition. Personally, I think this would be a great upgrade for the long term of the project and should be done sooner rather than later if it is to be done. To start we would need all the chains where astroport is deployed to upgrade to the newest version of token factory in their next upgrades.