The same store,ownedand rented.

The brief was a store the label owns outright. That is the slower route to a checkout and the faster route to everything after it — a real tradeoff, and not mine to make for them. So I built it both ways and let them decide with two working stores in front of them instead of a slide. They took the rented one, and it is live today.

polar planet — the owned build
The Polar Planet storefront: a bright brutalist home page with two product cards and a drop badge
Client
Polar Planet — streetwear label
Scope
Custom platform, and a Shopify theme of the same brand
Storefront
19 pages, 28 admin pages
Payments
Stripe Checkout, on the owned build
Live on
Shopify — the path they chose
65
API endpoints
33
Database tables
28
Admin pages
19
Storefront pages

01 · What owning it means

A hosted store rents three things: its checkout, its data model and its admin — and charges monthly for each capability bolted on top. This build owns all three. The catalog, the customers and the order history sit in a database the merchant controls, and a new back-office feature is a migration and a route rather than another subscription.

02

The owned build

Astro in server mode with React islands, on Cloudflare end to end: the app on Pages, the data in D1 behind ordered migrations, the media in R2 served through an authenticated route rather than a public bucket.

  • Storefront: shop, categories, product pages, cart drawer, wishlist, discount codes, drop countdown, reviews, FAQ
  • Order lookup that needs an order number and the checkout email, so a guest never has to make an account
  • Accounts with order history and a full status timeline, an address book, and a wishlist that merges in on sign-in
  • A back office with revenue and order charts, carrier-aware tracking, editable shipping addresses, internal notes and one-click refunds
  • Product CRUD across products, variants and images, plus content, reviews, FAQs and legal pages editable in place
  • Seeded to prove it at scale: 16 products, 300 variants, 119 images

03

The rented build

A native Online Store 2.0 theme on the same brand — matched fonts, colours and layout — written entirely as first-party sections and blocks, so every page is editable from the Theme Editor and nothing depends on a paid app. Checkout, fulfilment and transactional email stay Shopify’s. This is the one the label chose, and the one running the store today.

  • Live today: the label runs on this one, and the store is open
  • 21 sections, 9 snippets, 18 templates, 5 behaviour files, zero third-party apps
  • Product accordions driven by metafields; a cart drawer that carries a discount code through to Shopify Checkout
  • Classic customer accounts, a four-part About page, and themed legal pages separate from the checkout policies

04 · The tradeoff, stated plainly

The owned build takes on its own session handling, its own uptime and its own payment-adjacent surface — all of which Shopify would have absorbed. Stripe Checkout is what makes that acceptable: card details never touch the application. Anyone who tells you the custom route is free of that cost is selling you something.

Behind the counter

The deskit runs on.

The Polar Planet admin orders table, with each order’s status and total
The order desk, in the brand’s own type rather than a platform’s. Paid, fulfilled, shipped and refunded are all states this build owns.
The Polar Planet dashboard: revenue over thirty days, order totals and best sellers
Revenue, orders and best sellers, on a back office that costs nothing per month to keep running.

Under the hood

What it ismade of.

Application
Astro 5 (SSR) with React 19 islands
Language
TypeScript, strict
Database
Cloudflare D1 — 33 tables, 14 migrations
Media
Cloudflare R2 behind an authenticated route
Payments
Stripe Checkout
Styling
Tailwind CSS 4 over a brand token layer

Next step

Own it,or rent it.

Both are real answers, and which one is right depends on things worth half an hour of talking about — what you sell, how often, and what you want to still have in three years. We will say which we would pick and why, including when that is Shopify.

Fig. 01Rented bills twiceA platform charges monthly for each thing you bolt on. Built once, it is a migration instead.

We do the marketing. You stay lazy.