Operator overview

Everything subQ does, at a glance.

A turnkey research-peptide storefront with a full back office — catalog, cart, accounts, a research-grade dosage calculator, and a role-gated admin console. This page is a plain-English map of what already works.

34

SKUs

8

Categories

28

FAQ entries

30+

Compound refs

01 · Storefront

A cinematic catalog, not a template.

Editorial home page, filterable shop, and per-product detail pages with real scientific specs and generated on-brand imagery.

  • 01Home with featured strip and standards band
  • 02Shop with live search, category filter, and hairline grid
  • 03Product pages with CAS number, molecular formula, purity, size
  • 04AI-generated product photography, unique per SKU
  • 05Deep link into the dosage calculator from every product

02 · Cart & checkout

Guest-friendly, sign-in gated at commit.

Cart lives in the browser so visitors can shop anonymously; account is required only to place an order — which persists to the database as a real order plus line items.

  • 01localStorage-persisted cart, survives reloads
  • 02Free shipping over $100, flat rate otherwise
  • 03Shipping form with address capture
  • 04Orders + order_items written to Postgres on submit
  • 05Payments intentionally not wired — clean seam for Stripe/Paddle

03 · Accounts & auth

Email/password and Google, out of the box.

Supabase-backed auth with auto-provisioned profiles. Signed-in users get an account page with orders and saved dosage protocols.

  • 01Email/password + Google OAuth
  • 02Profile row auto-created on signup via database trigger
  • 03Order history with status, totals, and line items
  • 04Saved dosage protocols — load, edit, delete

04 · Dosage calculator

Research-grade, guided, printable.

A three-step workflow that walks a researcher from compound to draw volume, validates against literature ranges, and saves the result to their account.

  • 01Step flow: compound → reconstitution / dose / frequency → summary
  • 02mg / mcg / IU conversions with syringe unit readouts
  • 03Live validation with warnings for out-of-range doses or poor draw precision
  • 0430+ curated compounds with reference bands and peer-reviewed citations
  • 05Copy summary + print styles for lab bench use
  • 06Save to account, reload later via ?protocol=<id>
  • 07One-click add: correct vial count + bacteriostatic water to cart

05 · Content & SEO

Indexed, shareable, and answer-ready.

Every public route ships its own title, description, and Open Graph tags. The FAQ is structured for rich results.

  • 01About, Contact, FAQ, and per-product pages with unique metadata
  • 0228-entry FAQ across 8 categories with deep-link anchors
  • 03FAQPage JSON-LD for Google rich results
  • 04sitemap.xml and robots.txt

06 · Admin dashboard

One console for inventory, orders, alerts, and reseeds.

Available at /admin, gated by a role in user_roles. Four tabs:

  • 01Inventory — inline edit price, stock, low-stock threshold, restock note; atomic stock adjustments via an RPC with a full audit trail
  • 02Orders — status transitions (pending → processing → shipped → delivered / cancelled) enforced by a database trigger; stock auto-decrements on ship
  • 03Alerts — low-stock cards driven by per-product thresholds
  • 04Validation & reseed — Zod-based validator catches missing fields, duplicate slugs/names, negative or malformed prices, bad sizes, unknown categories, and allocation-% drift; one-click reseed from the source-of-truth file, preserving live stock

07 · Data model & security

Postgres with RLS on every table.

Nothing is publicly writable. Admin actions run through security-definer functions, and every stock change is audited.

  • 01Row-level security on products, orders, order_items, profiles, user_roles, stock_movements
  • 02Admin gating via has_role() security-definer function — no recursive-policy footguns
  • 03stock_movements audit log for every adjustment and shipment
  • 04Order-status transition trigger prevents illegal state changes

08 · Design system

Noir & Gold, Helvetica-first, print-aware.

A disciplined OKLCH token set powers the whole app. Hairline dividers, editorial eyebrows, monospace captions — no purple-gradient AI look.

  • 01Single source of truth in styles.css (OKLCH tokens, semantic variables)
  • 02Helvetica Neue / Inter / Arial stack
  • 03Dedicated print styles for dosage protocols
  • 04Fully responsive from mobile to wide desktop

Intentionally not wired

Clean seams left in place so the operator can pick a vendor without rip-and-replace work.

  • Payment processor

    Stripe or Paddle — insert at checkout submit

  • Shipping labels

    ShipStation / EasyPost hook on order → shipped

  • Transactional email

    Resend or Postmark for order and auth events

  • COA file uploads

    Supabase Storage bucket + per-batch link on product