↑ ↓ arrow keys to navigate · 15 slides
Perfume bottles
Investor Presentation · 2026

Scentum

"A taste engine disguised as a shop."
AI-native fragrance discovery — where language is the interface.

Next.js 15 React 19 Claude Haiku Lunr.js MongoDB Tailwind CSS TypeScript 5 4,343 perfumes 55 creators
UX Research A Playground for AI-First UX
The paradigm shift

Classical navigation,
reinvented through language.

Scentum is a rich-content playground for exploring AI-first UX at production scale. Built on the familiar layered e-commerce model — category, filter, facet, sort — it replaces mechanical drill-down with semantic intent mapping.

A user who once clicked Woody → Fresh → Unisex → £50–100 now types "something grounding for a Monday morning." The system navigates the same 4,343-SKU catalogue — through meaning.

Layered nav → semantic search 4,343 SKUs Intent mapping 5D taste vector AI-native UX
intimate grounding avant-garde quiet luxury smoky dusk archive-core molecular heritage experimental late-french-theory minimalist SEMANTIC SPACE search intent
Context The Problem with Perfume
The core challenge

Perfume is the only product
you buy blind.

You cannot click on a scent, see it, or wear it through a screen. Language and memory are the only tools.

Scentum · Product Philosophy
What this causes
  • No sensory preview. Users rely entirely on text descriptions written for advertisers, not shoppers.
  • Filter anxiety. "Floral", "woody", "fresh" mean nothing without reference — everyone's mental model differs.
  • Review noise. Fragrantica has millions of reviews; surfacing insight requires editorial curation.
  • Search mismatch. Existing platforms answer "what is this?" Users need "when would I wear this?"
  • Creator invisibility. The perfumer's artistic voice is absent from every major discovery platform.
The Insight Taste as a Multi-Dimensional Language
The ScoreVector — 5D taste fingerprint

No single score.
Navigate through language.

Authenticity
0.85
Projection
0.60
Longevity
0.78
Complexity
0.92
Versatility
0.45

Each dimension is a navigable axis — not metadata, but perceptual signal.
Users refine along these axes using natural language, not sliders.

Five vocabulary layers
Layer 1 — Numeric
ScoreVector
Authenticity · Projection · Longevity · Complexity · Versatility
Layer 2 — Chemical
Accord Space
Woody · Floral · Smoky · Leather · Citrus · Musky · Spicy
Layer 3 — Editorial
Cultural Tags
quiet-luxury · archive-core · experimental · late-french-theory
Layer 4 — Human
Creator Aesthetic
minimalist · molecular · heritage · indie · raw-naturals
Technical Architecture at a Glance
Rendering
Next.js 15
App Router · ISR · SSG (4,343 product pages)
UI
React 19
Server + Client components, streaming suspense
Intelligence
Claude Haiku
Search prose · Scent story (streaming) · Daily digest
Search
Lunr.js
Client-side full-text index, zero latency after hydration
Database
MongoDB
Perfumes · Creators · Events (anonymous tracking)
Styling
Tailwind CSS 3
+ shadcn/ui + CSS custom properties
Voice
Web Speech API
Browser-native, zero server calls
Types
TypeScript 5
Strict mode · Vitest for unit tests
Scraping
Scrapy (Python)
Fragrantica data pipeline → MongoDB import
Data pipeline
1
Scrapy scraper
2
Python importer
3
MongoDB
4
Next.js API routes
5
Claude enrichment
6
SSG / ISR pages
UX Research (old position) A Playground for AI-First UX
The paradigm shift

Classical navigation,
reinvented through language.

Scentum is a rich-content playground for exploring AI-first UX at production scale. Built on the familiar layered e-commerce model — category, filter, facet, sort — it replaces mechanical drill-down with semantic intent mapping.

A user who once clicked Woody → Fresh → Unisex → £50–100 now types "something grounding for a Monday morning." The system navigates the same 4,343-SKU catalogue — through meaning.

Layered nav → semantic search 4,343 SKUs Intent mapping 5D taste vector AI-native UX research
Fragrances / Unisex / Woody ACCORD Floral Fresh Woody Oriental Citrus LONGEVITY Short Long BRAND Byredo Maison Margiela Le Labo Diptyque PROJECTION PRICE RANGE Showing 1–24 of 4,343 results « 1 2 3 … 182 » intimate smoky dusk avant-garde grounding quiet luxury rainy evening archive-core molecular experimental heritage minimalist raw naturals late-french-theory LAYERED NAVIGATION SEMANTIC SPACE intent
Feature 01 The Fragrance Oracle — Guided Discovery
5-step deterministic intent mapping

Not a chatbot.
A ritual.

The Oracle is a structured 5-question interview. Each answer maps to a ScoreVector target and a natural-language query — with zero AI calls at this stage. Pure, fast, deterministic UX.

01 Occasion — Where will you wear this?
02 Mood — What feeling do you want to project?
03 Memory — What scent memory anchors you?
04 Constraints — Longevity, projection, budget?
05 Novelty — Familiar comfort or new territory?
Output — auto-populates search
Oracle → Search bridge
ScoreVector target computed from all 5 answers
Natural language query composed: e.g. "intimate woody with high longevity, avant-garde"
Lunr.js full-text search fires automatically
Claude prose answer surfaces 2–3 perfumes with evocative context
Reaction bar opens: refine further without starting over
Zero AI latency on steps 1–5 No user account required Session-stateless Mobile-first layout
Feature 02 AI Search + The Reaction Refinement Loop
How it works
1
Free-form query
"something smoky for a rainy autumn evening"
2
Lunr.js full-text match
Client-side index — instant, no network call
3
Claude Haiku prose answer
2–3 evocative sentences, names 1–3 specific perfumes with context
4
Reaction bar
← Too much  ·  Getting warmer  ·  Love this →
5
Claude rewrites the query
/api/refine — results update inline, no page navigation
Also: voice search + parsed intent badges

The search bar understands
taste vocabulary.

Query parser · src/lib/filter.ts
accord: woody tag: quiet-luxury dim: projection < 0.35 brand: Maison alias: "intimate" → low projection
Tokens displayed as visual badges in the search bar.
Voice input via Web Speech API — no server call.

The search is interpretive over factual — raw data becomes meaningful perceptual axes.

Scentum · MODEL.md
Perfume bottle
Feature 03 The Product Page — The Scent Story
What the product page delivers
  • Streaming Scent Story — Claude narrative personalised by creator voice + user's session search context
  • 5D Radar Chart — spider chart of the taste fingerprint (ScoreVector)
  • Note Cloud — visual prominence: larger text = dominant note, editorial styling
  • Community Signal — 4-block context: Fragrantica rating, sentiment label, popularity tier, catalogue percentiles
  • Similar Vibes — 6 recommendations: tags ×3 + accords ×2 + vector euclidean distance
  • Creator Card — perfumer's philosophy, aesthetic, signature notes, linked to their full catalogue
SSG at build time 4,343 product pages Story: streaming, per-session
Feature 04 Homepage — Creator Feed + Daily AI Digest
The living homepage

Every day, a different
curatorial vision.

Daily — ISR 24h · ~$0.02 Claude call
Editorial Digest
Claude evaluates all 55 creators + 40-perfume sample. Returns: featured creator + reason · 3 thematic collections · cross-creator connection note · full feed order.
7-day ×3 + 30-day ×1 blend
Trending Perfumes
Anonymous event tracking (page_view · search · refine · similarity_click) drives trending score — no user accounts, no cookies.
Aesthetic Tag Filter Strip
Creator Archive
Toggle by aesthetic (minimalist · maximalist · raw-naturals · indie) — feed reorders, no page navigation. 55 perfumers from 30+ nations.
The note cloud (decorative)
bergamot oud iris sandalwood ambrette leather vetiver benzoin rose musk heliotrope frankincense cardamom patchouli neroli labdanum
4,343
Perfumes indexed
SSG, sub-second TTFB
55
Creator profiles
AI-generated, Wikipedia photos
5D
Taste vector
Per-perfume fingerprint
Voice queries
Web Speech API, zero cost
UX Analysis · Part 1 Is this great UX for users searching perfumes?

Yes —

and here's the evidence.

Cognitive ease — no blank slate
Oracle and rotating suggestions scaffold intent. Users never face an empty search box with no guidance. Progressive disclosure, not overwhelming upfront filters.
Language, not spec
"Something intimate for rainy evenings" resolves to projection <0.35 + smoky accord automatically. Users speak human; the system translates.
Legible AI — no black-box mystery
Claude's prose names specific perfumes and gives reasons. Parsed badges expose the query logic visually. Users feel informed, not just served results.
Conversational refinement
The reaction bar ("Too much" / "Getting warmer" / "Love this") makes iteration feel natural — not clicking reset and starting over.
Context carries through
sessionStorage preserves search intent. The Scent Story on the product page references why you searched — continuity that no e-commerce platform offers.
Honest gap: no search history
Session-stateless design means users lose their exploration trail on refresh. A "recent searches" client-side cache would close this gap without requiring accounts.
UX Analysis · Part 2 Is this great UX for users contributing reviews?

Not yet —

and that is the next opportunity.

Currently, all ratings and sentiment data come from a Fragrantica scrape — read-only. There is no user-facing review submission form. The Community Signal blocks display this data beautifully, but the community cannot contribute to it.

What's missing
  • Review submission form
  • Structured vocabulary for contribution (ScoreVector-aligned)
  • Feedback loop: "your review changed the community signal"
  • Contributor identity / lightweight profile
Why this is the right next bet
Network effect
Reviews feed recommendations
Community sentiment scores directly influence trending and similarity weights. More reviews → better discovery for everyone. Classic content moat.
Competitive differentiation
Structured, not free-form
Fragrantica has unstructured text. Scentum's ScoreVector lets contributors rate on the same 5D axes used for discovery — data that compounds.
Retention driver
Contributors become power users
Research shows review contributors have 3–5× retention vs. passive browsers. The investment in review UX pays back in loyalty and content quality.
Design Proposal What Great Contributor UX Would Look Like
Proposed review flow · progressive disclosure
Contributor journey — 4 stages
01 Context gate — "Have you worn this fragrance?" Worn / Tested / Sampled. Sets expectation weight on the review.
02 5D sliders — Rate Authenticity, Projection, Longevity, Complexity, Versatility using the same vocabulary used in search.
03 Accord confirmation — "Do you pick up these notes?" Toggle existing accords. Add new ones from a curated vocabulary.
04 Optional prose — Free text, max 280 chars. AI auto-generates a ScoreVector-aligned summary if left blank.
05 Impact preview — "Your review shifts this perfume's community signal from 'acclaimed' to 'polarizing'." Visible feedback loop.
Design principles applied
  • Same vocabulary as search. The 5 axes in the review form are identical to the Oracle's output — users who searched already know the language.
  • Cognitive load reduction. Sliders + toggles before free text. Most reviewers never need to write — the structured data is already valuable.
  • Visible impact. Real-time preview of how the review shifts the Community Signal block — makes contribution feel meaningful, not into a void.
  • Context-weighted trust. Worn > Tested > Sampled. Heavier ratings from owned bottles. Transparent to the reader.
  • No account gate on first review. Magic link or email-anchor on submit. Barrier reduction; account created post-hoc if reviewer returns.
Business Model The Community Data Flywheel
Virtuous cycle — each loop strengthens the next
1
Better search → more discovery
AI search + Oracle reduces effort; users explore further, click more
2
More discovery → more reviews
Users who find a perfume they love are motivated to share; structured form reduces friction
3
More reviews → richer ScoreVectors
Community-weighted taste fingerprints become more accurate per perfume
4
Richer vectors → better recommendations
Similarity engine and digest improve; the platform gets smarter without more Claude calls
Back to step 1
Better search, more users, more contribution — compounding moat
Monetisation levers (future)
Affiliate / commerce
Buy button integration
High-intent discovery moment. Users landing on a product page after an Oracle session convert at higher rates than cold browse.
B2B data
ScoreVector as API
The 5D taste fingerprint database has standalone value for fragrance houses, retailers, and subscription box curation engines.
Creator programme
Perfumer pages + pro tier
55 creator profiles are a draw for the perfumers themselves. Verified creator pages, editorial features, and brand partnerships are natural extensions.
Roadmap What's Built · What's Next
Milestones
Now · v1
✦ Core discovery platform
4,343 perfumes · 55 creator profiles · Oracle · AI search + refinement · Scent Story streaming · Community Signal · Trending · Daily Digest
v1.1
Client-side session persistence
Recent searches · wishlist (localStorage) · "last 5 perfumes explored"
v1.2
Structured review contribution
5D slider review form · accord confirmation · magic-link identity · impact preview
v2.0
Community ScoreVectors
Community reviews fold into the taste fingerprint · similarity engine improves · digest becomes community-informed
v2.5
Commerce + B2B data API
Affiliate buy links · ScoreVector API for partners · Verified creator pages
What makes this defensible
  • The vocabulary moat. The ScoreVector + accord + cultural tag taxonomy is custom-built. It becomes more valuable with every review and every search event logged.
  • Creator relationships. 55 perfumers, each with a curated profile. This is curation that cannot be auto-generated at scale by competitors without the same editorial investment.
  • Session context persistence. The Scent Story knows why you searched. This cross-page continuity requires deliberate architecture — not a feature a fast-follow competitor can bolt on.
  • Cost-efficient AI usage. Lunr.js absorbs the heavy lifting; Claude Haiku is invoked surgically — prose, stories, digest. Marginal cost per search ≈ $0.0002.
  • No lock-in on user identity. Zero-account-required design maximises top-of-funnel; the identity layer is earned by demonstrating value, not demanded upfront.
Perfume atelier
The thesis

Scentum is not a perfume database.
It is a taste machine.

The search UX meets users where language lives — and carries them through to confident discovery. The review contribution layer, once built, transforms passive readers into active curators. That is the flywheel.

4,343
Perfumes
55
Creators
5D
Taste Vector
3
Claude endpoints
dan.stativa@gmail.com  ·  Scentum  ·  2026