← The Work

MilkMan

milkmaninc.com

MilkMan — the live site

MilkMan — menswear, sold as listed

What it is

MilkMan is the studio's own menswear label: heavyweight hoodies, tees, garment-dyed pieces, denim, work jackets and moto jackets, sold on milkmaninc.com. The line does not pretend a garment is new when it is not — the site's own title says *sold as listed*, and the catalogue carries a Markdowns section for the pieces being cleared. It is one of ours, which is why it appears here and not in a portfolio of other people's work.

What we built

The storefront on milkmaninc.com: a Next.js front end on Vercel, with Shopify carrying the catalogue, the bag and the checkout. The catalogue is the business's own — every product, every price in Canadian dollars, and a markdowns rail that moves as the inventory moves. The bag, the account and the shipping pages are part of the same build rather than links out to somewhere else.

The engineering

Next.js 15 on Vercel with React 19, reading the catalogue through the Shopify Storefront and Admin APIs. The storefront is its own app rather than a theme, which is what lets the design carry the brand's voice instead of the theme's. Every product is a real URL, so a piece can be linked, shared and bought — the same rule this studio holds its own storefronts to.

What the business gets

A storefront that sells the way the business actually operates: honest condition, visible prices, and a catalogue that is the store's data rather than a picture of it. It also proves the studio's point in the cheapest way there is — this is a site the studio runs, on the same stack and behind the same gates, that a client gets.

Start yours

It was built with the same system, and a human checked it before it shipped. Clients own their site outright — code, content, domain, and the accounts in their name.

Start your build at nimoswebsites.com/start

THE BRIEF

A menswear label that sells honestly — heavyweight pieces, listed as they are, with markdowns where the stock is being cleared.

HOW IT RAN — THE SIX STEPS

  1. BRIEF

    The label, the stock, and the plain rule the site had to carry: sold as listed.

  2. SCOPE

    The catalogue, the markdowns rail, the bag and the shipping — agreed in writing.

  3. POLICIES

    The two policies — written once, versioned and dated.

  4. ACCOUNT

    Domain, hosting, catalogue and store accounts, registered in the business's name.

  5. BUILD

    Storefront design and build — every product page checked in a real browser before launch.

  6. RUNNING

    Live at milkmaninc.com, with the catalogue and the bag running on the store's data.

WHAT CHANGED

  • The condition is on the page — sold as listed, with markdowns where the stock is being cleared.
  • The catalogue is the store's data, not a copy of it — a price that changes does not leave a dead card behind.
  • The storefront is its own app rather than a theme — so the brand's voice survives every collection.

The stack it runs on

The bench behind the storefront — the rails the catalogue, the bag and the markdowns rail all run on.

Next.js

the storefront the customer actually sees — server-rendered, fast on a phone

Vercel

where the storefront runs, and where the markdowns rail changes ship from

Shopify

the catalogue, the bag and the checkout — the store's own data

GitHub

every change to the storefront, versioned and reviewed before it ships

TypeScript

the storefront's code, typed and checked before every release

Tailwind CSS

one type scale and one colour set across every collection

Real product photography

the pieces photographed as they are — the page shows the garment, not a render

Condition, stated

sold as listed, with markdowns where the stock is being cleared

Every tile is a tool this build really runs on. Tools, not partnerships.

Your build starts the same way.

File the brief