Founder's note

The Fraghab story

Grow rooms, dispensaries, and a fragrance collection that outgrew its spreadsheet. Where Fraghab came from, what's shipped so far, and what happens next.

AM
Alex Martin
Founder, Fraghab
July 15, 202615 min read

I’m Alex Martin, a full-stack engineer in Michigan and a father of three. For most of the last decade I built businesses first and wrote software second. Fraghab is what happened when those two lives finally merged, and this post is the whole story of it. Fair warning, it’s a long one.

2017 – 2024

Seven years in a regulated industry

In 2017 I was one of the original founders of Lemonati Family Farms, a licensed cannabis cultivation facility with 20,000 square feet of canopy. I ran operations end to end, everything from compliance and staffing to supply chain and sales, and helped grow it into an award-winning brand generating millions a year in revenue. Nothing teaches you systems thinking like regulated agriculture. Every gram gets tracked, every process gets audited, and mistakes are expensive.

I left Lemonati to take the Operations Director role at Viola, the multi-state cannabis company that NBA veteran Al Harrington founded and named after his grandmother, whose glaucoma first showed him what the plant could do. Allen Iverson famously partners with the brand. I spent a year there running operations at a scale the farm never approached, with more markets, more facilities, and a lot more moving pieces. It was a different education entirely.

After Viola I went independent and consulted for operators around the industry. Everywhere I went I noticed the same thing: the software these businesses ran on was generic, rented, and fit them badly. So I started building custom tools for my clients, and somewhere in those years I stopped being an operator who codes and became an engineer with an operator’s instincts.

2024 – present

Planted Provisioning

Today I’m the software engineer and marketing director at Planted Provisioning, a three-store dispensary group best known for a massive delivery footprint that covers the entire east side of Michigan. For them I built a completely bespoke e-commerce web application that has processed over $15 million in sales, plus a dedicated company ERP suite. All of it runs on a network of physical servers I built myself, housed here in Michigan.

That software and infrastructure touches every aspect of Planted’s operations and customer experience, from the first tap on the storefront to the systems running behind the counter. It’s one of the only consumer-to-business operations solutions in the cannabis industry. The marketing that keeps those stores busy runs through me too.

$30M+
Revenue across my systems
30k
Monthly users served
3
Dispensaries on my code
9
Years operating

My daily languages are Go, TypeScript, Python, and Rust. Around them sit Next.js and React on the front, Postgres, SQLite, and Turso underneath, Docker and Redis in the middle, and lately the Claude API and MCP in more of my work every month. I care about the whole line from UX to deployment, mostly because in every job I’ve had, I was the whole line.

I measure software by whether it moves a real number.

The collector's wall

Outside of work I collect fragrances. A few bottles became a shelf, the shelf became a cabinet, and at some point I realized I was managing the whole thing from memory. Which decants were running low. What I wore to the last wedding. Whether that winter oud ever got a fair shot in the rotation. My head held all of it, right up until it couldn’t.

My answer, like everyone’s, was a spreadsheet. Name, size, price. The problem is that nothing which actually matters about a fragrance fits in a cell. How it wears in the heat, how long it lasts on skin, where you spray it, the night it earned its place in the rotation. A spreadsheet stores the label and loses the bottle.

The alternatives had their own problems. Discovery apps treat your collection as a byproduct of browsing, since their whole job is keeping you focused on the next bottle instead of the ones you own. Generic inventory tools don’t speak the language at all. No notes, no accords, no concentrations.

The category is sophisticated. The software supporting it wasn’t.

March 2026

Built for me first

In March 2026 I stopped waiting for someone else to fix it and started building, for an audience of exactly one. The first version modeled every bottle as a complete record, logged daily wearings with spray counts, and decremented the remaining milliliters so the collection on screen stayed true to the shelf. There was no pitch deck and no roadmap. It was just the tool I had wanted for years.

One conviction shaped everything after it: the software should feel worthy of the category. Fragrance is precise and deeply personal, so the design had to be calm and exact, with no clutter and no gamified noise.

260
Commits in two months
221
Components
51
Server actions
37
Active build days

I built Fraghab for myself, but the wall I hit is a common one. Within months of opening the doors to early users, 415 collectors had signed up to log wearings and build layering combos. The collection manager was becoming a platform.

The build log

Fraghab shipped its first roadmap feature at the end of March 2026, and what followed was the most productive stretch of building I’ve ever had. I kept a numbered backlog with strict dependency ordering, and held to one rule: nothing ships unless I’d want to use it that same day.

42
Numbered features
17
Foundation systems
13
Engine upgrades
8
Phases
Late Mar
Collection intelligence

Five analytics features built on data that already existed: wearing heatmap calendar, full filtered history, bottle drain prediction, cost-per-wear trends, and best-conditions insights. Zero new tables.

Late Mar
Suggest UX + wishlist catalog

A context-builder wizard for recommendations, low-inventory awareness, catalog auto-fill for wishlist scent profiles, and the shareable collection poster.

Early Apr
Visual depth + sharing

The scent radar chart, collection-overlap detection, try-before-you-buy decant matching, side-by-side comparisons with Venn diagrams, shareable fragrance cards, and the public gift registry.

Early Apr
Community infrastructure

The keystone block: structured community reviews, a reputation system with expert badges, and the public Scent Passport, each one unlocking the next.

Apr – May
Advanced suggest

Natural-language queries powered by Claude, outfit-based suggestions from a photo, travel mode with destination weather, the weekly rotation planner, and suggestion-accuracy tracking.

Late May
Community big bets + commerce

The live SOTD world map, tournament brackets, blind-verdict challenges, fragrance events, the collector marketplace, price tracking, bundle optimization, and bulk import.

June
Rebuilding the engine

The hardest-working part of the app moved onto a stronger foundation, one built to handle many times more collectors. Details below.

The recommendation engine grew up alongside the feature work, through thirteen separate upgrades. It went from one hardcoded forecast to live weather for your city, from three crude temperature buckets to a continuous warmth curve, and from five moods and six occasions to nine and twelve. It learned to weigh base notes more heavily than fleeting top notes, to factor projection and longevity by occasion, and to build a preference profile out of your own wear history. The AI layer also became collection-aware, so asking for “something like my Ombré Nomade but fresher” now resolves to the actual bottle on your shelf.

June 2026

Rebuilding the engine

By June, growth made the next step obvious. The recommendation engine, the part of Fraghab that reads the weather, the occasion, and your own wear history to pick your fragrance each day, works harder than anything else in the app. It deserved a foundation built for a much bigger community. I spent weeks measuring exactly where the app slowed down as more collectors signed on, then rebuilt that engine from the ground up and checked its picks against the original down to the last decimal. Nothing about your recommendations changed except how quickly they arrive.

The old and new engines ran side by side for over a thousand real recommendations. When they agreed every single time, the new one quietly took over.

That upgrade is live today. Every suggestion you get from Fraghab comes from the new engine, and the original still stands by as a safety net. There was no downtime and nothing for anyone to notice, which is exactly how a change like this should feel. I also sized it for the community I expect after the apps launch, not the one it serves now.

Late April 2026

Launch

Fraghab has been live on the web since late April as an alpha. Since the new engine took over, bugs and errors have been minimal and the app has simply been stable, so there was no reason to sit on a long runway. The doors are open, and anyone can sign up today.

Early August 2026

Fraghab leaves the browser

In early August 2026, Fraghab ships to the Apple App Store and Google Play. The rebuild happened in this order for a reason. The engine was designed from day one to power more than a website, so the iPhone and Android apps will run on the same core the site runs on and feel just as fast.

  • A native iPhone app with Face ID sign-in and push notifications for wearing prompts, streaks, social pings, and marketplace offers
  • A native Android app at full parity, tuned for the device in hand rather than wrapped in a browser shell
  • Camera-first bottle capture, offline wearing logs that sync when you’re back online, and sharing through the system share sheet

The phone in your pocket gets the same speed as the web.

Q4 2026

Performance at scale

This is the payoff phase for the rebuild. The goal is an application that holds its speed as load climbs, so growth stays boring.

  • Load and stress testing that models peak community moments (the SOTD world map, tournaments, live feeds) at many multiples of today’s traffic
  • Stateless backend instances behind a load balancer, scaling out automatically as concurrent wearers climb
  • A layered cache, per-region runtime caching plus shared invalidation, so the database serves writes while reads come from memory
  • Per-request cost and latency budgets enforced in CI, so a performance regression never reaches production unnoticed

The through-line

From the first commit to the engine rebuild to the apps ahead, the goal hasn’t moved: build the tool a serious collector actually deserves. If that sounds like your shelf, come join us. The door is open.

Get started

Ready to build
your archive.

Sign up with Google or create an account with email — start cataloging your collection in seconds.

Fraghab — Fragrance Collection Index, Est. 2026
Est. 2026