How can I create a factory of Upgradeable smart contracts?

Hi everyone,

I'm using OpenZeppelin hardhat plugin to deploy proxy contracts and I was asking myself how to achieve the same thing but from a contract. So for example I want to have a ProxyContractFactory that can create Proxy contracts, so this is the structure:

ProxyContractFactory ---- ProxyContract1 ------> Implementation1OfProxy1
                    |---- ProxyContract2 ------> Implementation1OfProxy2
                                        |------> Implementation2OfProxy2

and so on...
Can you point me to any documentation that can help me understand this? Thank you in advance.

There is a thread with some examples here: Deploying Upgradeable Proxies and Proxy Admin from Factory contract

1 Like

Thank you for your reply @ericglau! I will dig into that

Does it include examples with a Factory that is upgradeable itself?