2022-02-24
2468
#blockchain
Pranesh A. S.
94374
Feb 24, 2022 ⋅ 8 min read

Using the UUPS proxy pattern to upgrade smart contracts

Pranesh A. S. Backend Engineer and Blockchain Developer. Keep learning, spread knowledge.

Recent posts:

CSS @container scroll-state: Replace JS scroll listeners now

CSS @container scroll-state lets you build sticky headers, snapping carousels, and scroll indicators without JavaScript. Here’s how to replace scroll listeners with clean, declarative state queries.

Jude Miracle
Feb 19, 2026 ⋅ 4 min read
podrocket 2-18

How developer platforms fail (and how yours won’t)

Russ Miles, a software development expert and educator, joins the show to unpack why “developer productivity” platforms so often disappoint.

Elizabeth Becz
Feb 18, 2026 ⋅ 52 sec read
the replay february 18

The Replay (2/18/26): Copilot workarounds, platform pitfalls, and more

Discover what’s new in The Replay, LogRocket’s newsletter for dev and engineering leaders, in the February 18th issue.

Matt MacCormack
Feb 18, 2026 ⋅ 36 sec read
andrew evans claude copilot

Can’t use Claude at work? How I recreated “Skills” in GitHub Copilot

Learn how to recreate Claude Skills–style workflows in GitHub Copilot using custom instruction files and smarter context management.

Andrew Evans
Feb 18, 2026 ⋅ 13 min read
View all posts

4 Replies to "Using the UUPS proxy pattern to upgrade smart contracts"

  1. Do we really need to import Initializer in our Pizza contract (Considering UUPSUpgradeable already has it). Or was it done here only to make tutorial more readable and understandable?

  2. Even though the contract inherit from UUPSUpgradable, upgradable pattern has to be specified in deployProxy function. Otherwise it defaults to transparent proxy.
    Should be something like this.
    const Box = await ethers.getContractFactory(“BoxV1UUPS”);
    console.log(“Deploying Box…”);
    const box = await upgrades.deployProxy(Box, [42], {
    initializer: “store”,
    kind: “uups”,
    });

Leave a Reply

Would you be interested in joining LogRocket's developer community?

Join LogRocket’s Content Advisory Board. You’ll help inform the type of content we create and get access to exclusive meetups, social accreditation, and swag.

Sign up now