all notes
2026-08-06Naman Barkiya

Medicileaf build postmortem: the brand refresh that had to come before the storefront.

Medicileaf is a CBD wellness brand whose identity read clinical and whose storefront was stitched from three incompatible plugins. We shipped a full brand refresh paired with a WooCommerce rebuild around it, plus a claims-review-status system so CBD marketing copy can't ship in a regulated category without passing review first — because the rules vary by geography and change often.

A CBD wellness brand's identity read clinical and its storefront ran on three plugins fighting each other. We rebuilt both — and the real build turned out to be the compliance system underneath.

Medicileaf is a CBD wellness brand — salves and roll-ons sold direct to US consumers in a category where marketing claims are regulated and the rules shift by state. We shipped a full brand refresh and rebuilt the storefront on WooCommerce, replacing three incompatible plugins that were stitched together and fighting each other. This is why we touched the brand and not just the store, why WooCommerce over a custom stack, and the compliance system that turned out to be the real build.

The brief on paper was "fix the store." The founder's product line was strong — customers who tried it stuck around. The web presence did not carry that. The identity read clinical where the product felt warm. Checkout ran on three plugins layered over years, each patched around the others' limits. Shoppers bounced before they saw the product story. The team running it dreaded the admin.

Why a full brand refresh and not just a new storefront?

Because the storefront was never the root problem. A faster checkout on a clinical identity still reads clinical. Wellness buyers respond to how a brand feels before they read a spec sheet — the palette, the photography, the tone of the label copy all do work a plugin swap cannot.

We scoped a new brand system first: wordmark, palette, photography guidelines, packaging direction. The storefront was built to carry that system, not the other way around. Rebuild the store on top of a weak identity and you have a faster version of the same problem. Rebuild the identity and the store becomes the place that finally shows it off.

Why WooCommerce and not a custom stack?

Because the constraint was not the platform — it was three plugins that had stopped talking to each other. WooCommerce is not exotic; it is what a WordPress-native, product-heavy catalog runs well on when it is built as one coherent system instead of three bolted-together ones. Ripping out WordPress entirely would have meant migrating years of SEO equity, content, and operator familiarity for a category where the traffic split between store and education content matters more than framework preference.

The fix was never "replace WordPress." It was "stop asking three plugins to agree on inventory, taxonomy, and checkout at the same time." One coherent WooCommerce build, one product taxonomy, one set of admin workflows that match how the team actually restocks, promotes, and ships — that closed the gap a stack migration would not have.

What was the hard part?

Category compliance. CBD marketing claims are regulated, and the rules vary by geography and change often — what a label or a product page can say in one state can be a violation in another, and the list moves.

Manual review does not scale against a moving list, especially once a small team is publishing product copy, education content, and promotions on a normal marketing cadence. We built the fix into the content system instead of into a person's memory: every marketing claim lives in a shared library with a review status attached. A claim without a passed review cannot ship, structurally, not by policy reminder. Marketing can move fast on everything that has cleared review and cannot accidentally ship the one thing that has not.

That is the same discipline we apply to security on AI-built MVPs — define the checks, then make skipping them structurally hard, not just policy. Compliance in a regulated category works the same way: a rule nobody can act on by accident is worth more than a rule everybody is supposed to remember.

What shipped?

One coherent system from logo to checkout: the new brand identity, a WooCommerce storefront built around curated product taxonomy and wellness-aware copy, a content architecture that supports education-first marketing in a category where the legal footing of every claim matters, and admin workflows shaped around how the team actually operates day to day rather than how a generic plugin assumed they would.

The store now looks like the brand its owners wanted in the first place. Add-to-carts moved up. Support tickets asking "where do I find X" moved down — the clearest signal that the taxonomy finally matches how customers actually shop the catalog, not just how the product line was organized internally.

What would we do differently?

Scope the compliance system in the first conversation, not after the brand and storefront work was already underway. The claims-review library ended up being as load-bearing as the identity refresh or the WooCommerce rebuild, but we treated it as an add-on to the content architecture rather than a fourth pillar of the build from day one. For any regulated-category client, the review-status system for marketing claims deserves the same up-front scoping as the storefront itself — because it is infrastructure the marketing team lives inside every day after launch, not a feature that ships once and gets forgotten.


What does this build confirm?

This is still an active retainer across brand, commerce, and marketing — the claims library and the admin workflows are the parts of the build the team lives inside every day after launch, which is exactly why they got the scoping-first lesson above.


Written 2026-08-06 by Naman Barkiya.

FAQ

Questions this usually surfaces.

What would you do differently on the Medicileaf build?
Scope the compliance system in the first conversation, not after the brand and storefront work was already underway. The claims-review library ended up as load-bearing as the identity refresh or the WooCommerce rebuild, but we treated it as an add-on to the content architecture instead of a fourth pillar of the build from day one.
How long does a brand refresh plus storefront rebuild take?
It depends on catalog size and how tangled the existing storefront is — replacing three incompatible plugins is a different scope than a clean migration. We don't publish a single number because this build, unlike a from-scratch MVP sprint, runs as an active retainer across brand, commerce, and marketing rather than a fixed one-off timeline.
What does a build like this cost?
Cost scales with scope — a brand system alone is a smaller engagement than a brand system plus a full storefront rebuild plus an ongoing compliance content system. We scope and quote per engagement rather than publishing a flat number, because the honest answer depends on catalog size, plugin debt, and how regulated the category is.