We Rebuilt Our Entire Shopify App UI Over the Holidays (Here's Why)

Published on January 2026 • 4 min read

Over the holidays, while most teams were winding down, we were heads-down rebuilding our entire user interface.

Not because it was broken. Because Shopify raised the bar.

What Shopify Did

Shopify has been working toward this for a while. In May 2025, they announced Polaris Web Components in early access. Then in October 2025, they declared it stable and generally available.

This is a ground-up rebuild of how apps should look and feel inside the Shopify admin. Shopify deprecated Polaris React (the library most apps are built on) and moved to a new architecture based on Web Components. The new system is:

  • Framework-agnostic. Works with React, Vue, vanilla JavaScript, or no framework at all.
  • CDN-delivered. Components load directly from Shopify’s servers, always up-to-date.
  • Unified. The same components work across Admin, Checkout, Customer Accounts, and POS.

Apps built on the old Polaris React still work. But they’re now running on deprecated technology. Over time, they’ll drift further from Shopify’s native look and feel.

Most apps will put off this migration until they’re forced to. We didn’t.

What We Did

We migrated 3PL Pulse to Shopify’s new Polaris Web Components, replacing the deprecated Polaris React across our entire UI.

This wasn’t a weekend project. It meant rebuilding our component library and updating hundreds of UI elements to use the new <s-button>, <s-modal>, <s-table> components.

We also built an abstraction layer in our shared UI library. When Shopify’s Web Components evolve, we update one place, not dozens of files across multiple apps.

Why do this now, when we could wait?

Because “good enough” isn’t good enough. The same attention to detail that goes into tracking your 3PL’s handoff times to the minute goes into how we build our product.

What This Means for You

3PL Pulse dashboard built with Shopify's Polaris Web Components
3PL Pulse dashboard built with Shopify's Polaris Web Components (full size)
Click anywhere to close

The 3PL Pulse dashboard, now running on Shopify's Polaris Web Components

The app feels native. Every button, every table, every modal now uses the exact same components as Shopify’s own admin. It’s not an app that looks like Shopify. It is Shopify.

Automatic updates. Our UI components now load directly from Shopify’s CDN. When Shopify improves their design system, those improvements show up in 3PL Pulse automatically. No app update required.

Faster and lighter. The new components are built from the ground up for performance. Smaller bundle sizes mean faster load times, especially on slower connections.

Future-proof. We’re not just current with Shopify’s platform. We’re ahead of most apps in the ecosystem. When Shopify adds new capabilities, we can adopt them immediately.

Why We Care About This Stuff

You might be thinking: “I just need my 3PL data. Why does this matter?”

Fair question. Here’s why.

The same philosophy that drives this migration drives everything we build. We track fulfillment times because precision matters. We rebuilt our entire UI because the details matter. We follow Shopify’s platform direction because building on solid foundations matters.

When you’re trusting an app to monitor your 3PL’s performance and catch issues before customers complain, you want that app built by people who sweat the small stuff.

That’s us.

For Other Shopify App Developers

If you’re building on Shopify’s platform, here’s our advice: don’t wait on this migration.

Yes, Polaris React still works. Yes, the migration has friction. Some props don’t map 1:1 (no more variant="plain" or size="slim" on buttons). You’ll need to embrace Shopify’s design decisions rather than fighting them.

But the direction is clear. Shopify is investing heavily in Web Components. The new system is faster, lighter, and gives your users a more native experience. Early adoption means you’re building on the future, not the past.

A few things that helped us:

  • Start with an abstraction layer. Wrap Polaris components in your own library. When you swap implementations, you change one file, not hundreds.
  • Migrate incrementally. Shopify’s hybrid approach guide lets you run both Polaris React and Web Components side by side.
  • Trust the constraints. When a prop doesn’t exist in Web Components, ask yourself if you really needed it. Usually, Shopify’s default is fine.

If you want to chat about the migration, . Happy to share what we learned.


Already using 3PL Pulse? You’re on the new platform. No action needed.

Not using it yet? Install 3PL Pulse from the Shopify App Store and see the difference native design makes.

Ready to optimize your fulfillment operations?

Get early access to our platform and start tracking these metrics across your 3PL network.