shariq103/mycounter_uups_upgradeable — explained in plain English
Analysis updated 2026-05-18
Learn how the UUPS upgradeable proxy pattern works in a real contract.
Use this project as a starting template for your own upgradeable contract.
Study a V1 to V3 upgrade workflow deployed on a public testnet.
| shariq103/mycounter_uups_upgradeable | agus-ops/amphi | alexzoid-eth/morpho-midnight-fv | |
|---|---|---|---|
| Stars | 0 | 0 | 0 |
| Language | Solidity | Solidity | Solidity |
| Setup difficulty | moderate | hard | moderate |
| Complexity | 4/5 | 4/5 | 4/5 |
| Audience | developer | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Requires Foundry installed and an Arbitrum Sepolia RPC URL plus a wallet private key.
MyCounter_UUPS_Upgradeable is a smart contract project built with the Foundry development toolkit, meant as a reference example of how to build an upgradeable Ethereum smart contract using the UUPS pattern, short for Universal Upgradeable Proxy Standard. The core idea behind this pattern is that a contract's logic can be swapped out for a new version later on, without changing the contract address that users interact with or losing any stored data. The README frames this as a demonstration of secure contract design. It uses OpenZeppelin's AccessControl and OwnableUpgradeable libraries so that only authorized accounts can trigger an upgrade, and it follows storage layout conventions, including a reserved gap variable, to avoid data collisions when moving between contract versions. The project reports 100 percent test coverage across lines, statements, branches, and functions. The contract has been deployed to Arbitrum Sepolia, a public test network for the Arbitrum blockchain, and the README lists the exact proxy contract address along with a link to view it on the Arbiscan block explorer. The deployment walks through three versions of the contract logic, V1 through V3, showing that the proxy address stays the same across all three upgrades while the underlying behavior changes. To use the project, a developer needs Foundry installed, which is a toolkit for building, testing, and deploying Solidity smart contracts. After cloning the repository and installing dependencies with forge install, a developer sets up an environment file with an Arbitrum Sepolia RPC URL and a private key, then runs forge test with coverage to check everything works, and finally runs a bundled deployment script to execute the full V1 to V3 upgrade workflow on the test network.
A reference smart contract showing how to build an upgradeable Ethereum contract using the UUPS proxy pattern, deployed on Arbitrum Sepolia.
Mainly Solidity. The stack also includes Solidity, Foundry, OpenZeppelin.
The README does not state a license for this code.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Don't trust strangers blindly. Verify against the repo.