Back to portfolio FLOW3R
Case study — self-initiated DTC brand
FLOW3R

Building a premium glass brand in a niche defined by tight, real-world constraints.

I took Flow3r from a question to a live store, solo — the strategy, the brand, the UX, the sourcing, the photography, and a custom Shopify build. This is how it came together, and what I learned doing it.

Role
Founder & solo designer
Type
Self-initiated · live & ongoing
Timeline
2025 – present
Tools
Figma, Shopify/Liquid, Photoshop, Lightroom Classic, Claude Code
Live
Disciplines UX design UI design Product design Brand & identity Art direction Information architecture E-commerce Front-end Photography Go-to-market

A design brand first, a smoke shop never.

Premium functional glass for adults who want the product without the costume.

Flow3r 8-inch beaker water pipes in green, blue and pink
01 Why a bong?

Why a bong?

It started with a month I didn't plan for.

I was serving at a Korean BBQ spot when a kitchen fire closed it for about a month. With the place shut and the time suddenly free, I decided to finally build something of my own. I gave myself one month to do it, and that deadline shaped a lot of what followed. By the time the restaurant reopened, the brand, the store, the photography, and the launch were done.

So, why a bong? It's a real design problem almost no one is treating like one. I'm in college, and I've watched this category shift in real time — socially, politically, legally. It's normalizing fast and the audience is broadening, but the design language is stuck a decade behind: neon, skulls, and "stoner" signaling everywhere.

I wanted a space with genuine competition but enough friction to make the work hard — a niche without many strong, design-led players, where the rules of the category would force sharper decisions than a safe product ever would. A bong was the most honest version of that bet: a real market, a changing customer, and constraints that would test whether I could build a brand, not just style one.

02 The opportunity

A changing buyer no one was serving.

As the category goes mainstream, the buyer is changing — design-literate adults, roughly 25–35, who already buy from brands like Aesop, Arc'teryx, and Apple and expect that standard from everything they own. They want the product without the subculture costume, and the shelf they'd put it on is a high one to reach.

How do you make someone proud to leave it out, instead of hiding it in a drawer?

M
Maya — 29
Representative buyer · designer · Los Angeles

"I'll happily pay more for something that looks like it belongs in my apartment. I just don't want it to look like it came from a gas station."

Goals
  • Quality gear that reads as design, not paraphernalia
  • A store she can trust with her card and address
  • Discreet, no-logo delivery
Frustrations
  • The category looks juvenile and loud
  • Sketchy storefronts with no real information
  • No way to judge quality before buying

She's the person every decision in the project answers to.

03 The constraints

The restrictions drove the design.

This is one of the hardest categories to build a brand in. I treated that as the point, not a reason to bail — each limit shaped a real decision about how the brand looks, reads, and grows.

No paid ads

Meta, Google, and most platforms won't run the category. Organic and owned channels are the only way to grow, so the site and content are the marketing.

Payment-processor risk

Processing is fragile for the category and can be pulled. It had to be set up carefully so real orders clear cleanly.

Mandatory 21+ gate

Age verification is required and becomes the first thing a visitor meets — it had to gate without feeling hostile.

Legal limits on copy

There are real rules on what the marketing can claim, especially around health and charitable giving. The wording had to be careful and kept current.

04 The brand

Gallery, not headshop.

The positioning came first and became the filter for everything after it: I'd build something that reads like a design brand and never like a smoke shop. That decision set the color, the type, the photography, and what the copy is allowed to say.

Flow3r flower logo mark
FLOW3R
California Glass Co.
Forest
#245034
Deep
#163322
Ink
#14201A
White
#FFFFFF

One font, restrained color, a lot of white

Forest green for the dramatic moments, white as the base, near-black text, thin hairlines for rhythm, and a single typeface — PP Neue Montreal — across every weight. Restraint is the point: one font, used well, reads more premium than a mixed stack.

The palette took a couple of tries. I started on a cream base, but next to the product it read soft and a little dated, so I moved the whole site to pure white and let the glass and the green carry it.

One detail I'm glad I made by hand: the mark itself. The flower is four petals wrapped around a cross of negative space — I drew and refined it myself, and it carries through the whole brand, from the favicon to the storefront to the loader on this page.

A voice with rules

The brand voice is confident, minimal, and adult, and I held it to a banned-language list — no slang, no "elevate your experience," no fake-luxury filler — plus a banned-fonts list so the type never drifts. Rules made the brand consistent across a long build, even working alone.

A consistency audit

I ran a site-wide pass so the FAQ, the policy pages, and the product copy all state the same shipping windows, return windows, and guarantee terms. Contradictions at checkout quietly erode trust, so I treated factual consistency as a design problem, not an afterthought.

The charity-copy call

Flow3r donates a portion of one collection's sales to California cat rescue. The punchy move is a hard percentage and a named partner — I deliberately didn't. California's commercial co-venturer rules require a registered nonprofit and a written agreement before you can advertise a specific number, so I kept the wording soft and accurate on every surface. Accuracy and legal safety over a louder claim.

Image slot — Brand guidelineA page or two from the living brand guide (color, type, voice rules).
Image slot — Logo constructionThe flower mark and its grid / negative-space cross.
05 Designing the store

A store that guides instead of overwhelming.

I designed the full experience around one job: get the right person to a confident purchase without friction or doubt. That meant a clear map, a flow that respects the legal gate, a cart that nudges without nagging, and testing every step against how real people behaved.

The live Flow3r storefront — the shop page on flow3r.shop
The live storefront — flow3r.shop as it ships today.

The map

A tight information architecture, with support links wired to jump straight to the right answer instead of dropping people at the top of a long page.

Home
Shop all products
Product per item
Cat Collection curated line
Glass Guide education
About brand story
FAQ & Policies anchored
Rewards loyalty
Contact support
Cart checkout

The purchase flow

The 21+ gate is the first interaction, so the flow had to absorb that friction and keep momentum to checkout.

Step 1
Age gate
21+ verify, first touch
Step 2
Browse
Shop & collections
Step 3
Product
Specs, photos, trust
Step 4
Cart
Free-ship nudge
Step 5
Checkout
Processor-safe
Step 6
Confirm
Tested on mobile

Testing told me what to fix

I put the real site in front of 10+ people across a few rounds — friends and friends-of-friends — and gave them concrete tasks ("buy this water pipe," "find the return policy," "check out on your phone") instead of asking whether they liked it. Where someone hesitated, that became the next thing to change.

Decision log — what testing changed

Before

Removing a cart item waited on the server, so the UI lagged.

Testing showed

People tapped twice and thought it was broken.

Changed

Optimistic UI — the item fades out instantly and syncs in the background.

Before

Support links dropped people at the top of a long FAQ.

Testing showed

Testers scrolled, gave up, and asked me directly.

Changed

Footer links jump to the exact anchored answer (shipping, returns).

Before

An early theme direction I'd spent real time on.

Testing showed

It read wrong next to the premium references — cheaper, not calmer.

Changed

Scrapped it and restarted, including killing the cream palette for pure white.

Before

Brand and policy copy that had drifted page to page.

Testing showed

Terms contradicted each other — exactly the thing that kills trust at checkout.

Changed

Rewrote the pages and ran a consistency audit so every surface matches.

The cart, in detail

A free-shipping progress bar tied to a clear threshold, an order summary, a discount field, and a "you might also like" module — all aimed at order value without nagging. Edge states are intentional too: consistent "Cart" labeling everywhere, a deliberate grid per breakpoint (two-up on mobile, three-up on desktop), and sold-out states that read as designed rather than broken.

Release gate

Before driving any traffic, I treated a full order on an actual phone — homepage to confirmation email — as a hard gate. If a real person couldn't buy and trust the confirmation, nothing else mattered yet.

Image slot — Wireframes → finalA low-fi flow next to the finished screen.
Image slot — Cart drawer (live)The cart with the free-shipping progress bar.
Image slot — Product pageA finished product page, desktop or mobile.
Image slot — Testing notesA photo or scan of your usability notes.
06 Making it real

From a design file to a real business.

A premium claim only holds if the product, the pictures, and the store all back it up. This is the part most "brand projects" skip: real suppliers, real photography, a real build, and a launch inside a category that won't let you cut corners.

Sourcing the product

I contacted and vetted a range of suppliers — including overseas — took meetings, and negotiated to find product that could carry a premium price: lab-grade borosilicate, specs chosen for how the piece performs, and a base wide enough to be stable and easy to clean. Sourcing wasn't a footnote; it was a design decision about what the brand would stand behind.

Engineered airflow

Downstem, chamber, and joint chosen for a clean, smooth draw.

Borosilicate only

Lab-grade glass, chemically inert at any temperature.

Clean is a feature

Wide bases and removable parts; gear that isn't a chore.

Shooting it myself

On a real budget with no team, I shot the product at home — a DIY setup in my room with controlled lighting, reflectors, and a clean backdrop, using my camera from a photography class. Glass is hard to light, so the work was in the patience and the setup. I finished everything in Photoshop (retouching, spot cleanup) and Lightroom Classic (consistent color across the catalog), then compressed and pushed each asset to the CDN so the site stays fast.

DIY home studio — softboxes and a tripod set up around three Flow3r beakers on a white sweep
The setup: softboxes, a tripod, and a white sweep in my room.
Three Flow3r beakers with pink, green, and blue glass rims on a clean white background
What came out of it.

Building the storefront

The storefront is a custom Shopify Liquid theme I built with Claude Code. Every brand, UX, and product decision was mine — I specified the design and behavior, then tested and debugged each change against the live store.

Launching it

Flow3r is live and taking its first real orders, mostly through word of mouth — it's early, and it's an active, ongoing project. Growth has to be organic, so the store and content are the engine, with social feeding it (an early post landed around 200 likes). I held back launch discounts to protect the premium read, and set a gate on any ad spend until there's a real baseline of organic orders.

Discreet shipping

Plain box. No logos.

1-year guarantee

Manufacturing defects covered.

14-day returns

Unused, unopened.

CA fulfillment

1–3 business days.

Debugging a live store

Working on a published store, I learned to pull the actual theme files through Shopify's API before judging anything, because the public HTML is cached and can show a stale, false picture — a habit that stopped several false bug reports. I traced a cart bug where a product-title field came back empty and shipped a small JavaScript fallback to refill it, and I kept the cart drawer and cart page on separate class names so styles couldn't leak between them.

When the ads got denied

Paid ads got rejected for the category, as expected. Instead of fighting the policy, I leaned the whole growth plan into organic and owned channels — content, SEO, and social — so the business doesn't depend on a door that's closed.

Keeping it legal and current

Because this is a real business in a regulated space, the policy and claims work is a genuine liability, not copy filler. Rules and platform policies change, so I treated the legal-adjacent pages as living documents and kept them accurate and up to date as things moved.

Image slot — Supplier samplesProduct samples / sourcing process.
Image slot — The launch postThe ~200-like Instagram post.
07 Reflection

What I'd do differently, and what it proved.

The thing I'm proudest of is that I wasn't precious about my own work. On a deadline that tight, restarting is expensive, so I never did it on a whim — each time was a deliberate call: keep what was working and improve it, or change direction when a better idea or a failed test made the case. I rewrote the theme, the palette, and whole pages that way, and the project got better every time. Knowing when to keep something and when to start over turned out to be the skill I leaned on hardest.

It also proved the thing I most wanted to prove: that I can take a brand from a single question all the way to a live, working store on my own — against a deadline I set and kept.

What I took away

How much of good design in a real business is restraint and correctness — consistent copy, fast images, honest claims, careful legal wording — not only how it looks. And that testing beats taste when the two disagree.

What I'd improve next time

Put rough flows in front of target buyers earlier, write the brand and content rules down before the first screen instead of auditing them into shape later, and set up clean analytics from day one so I'm measuring the funnel from the first visit.

What it took: brand strategy, identity and a design system, UX and information architecture, usability testing, conversion-focused e-commerce UX, copywriting and compliance-aware content, product sourcing and merchandising, photography and retouching, a custom Shopify build with QA, and organic go-to-market — held together by a willingness to test and restart until it was right.

See it live.

Flow3r is a real, early-stage business — strategy through storefront, built solo and still going.