
Case study
A catalog that knows what it is selling
I clarified how products, store listings, stock, and lab evidence fit together before designing a path to publication.
- Role
- Co-founder
- Scope
- Retail catalog model and operator workflow
- Key decision
- One guided path for first use, direct workspaces for routine work
- Outcome
- Selected design direction, approved wireframe baseline, and a public schema
The catalog had several kinds of truth
A retail product can have multiple sellable packages, different prices and stock at each store, and lab evidence that affects whether it can be offered at all. Early catalog concepts put much of this on the same screens, but left ownership unclear. A description, a store listing, a stock count, and a lab result looked like fields on one product even though they follow different rules.
Research into the operating workflow, CMS wireframes, product definitions, and external data formats exposed conflicting vocabularies. Product form was mixed with regulatory classification. Potency looked editable on the product, although the laboratory result should be its source. Store price and quantity appeared close to product content, despite changing independently by location and package.
I separated those responsibilities. Product holds shared identity and content. Variant identifies a sellable package. Listing controls how a variant is offered at a store. Inventory records quantity and availability. A Lab Result holds testing evidence and has its own validity period. The interface can bring these facts together without making them the same record.
- ProductShared identity and content
- VariantSellable package
- ListingStore price and publication
Lab ResultSource of testing evidence
InventoryStore quantity and availability
Georgia changed what the catalog needed to know
Green Loom’s retail launch scope is Georgia consumable hemp. Georgia prohibits retail sale of hemp flower and leaves and requires a full-panel certificate of analysis, or COA, contracted within the last 12 months and made publicly available. Product labels must show the analysis results or provide direct QR access to them. Those requirements shaped the available product forms, the evidence an operator needs to inspect, and the proposed publication checks.
We separated physical product form from regulatory class. A product can remain representable in a jurisdiction-neutral model while a Georgia profile narrows what the local catalog can offer. The Lab Result stays distinct from Product because the certificate can expire or be replaced without changing the product’s identity.
Design context: Georgia Department of Agriculture retail guidance and Georgia’s consumable-hemp rules. These sources informed the design; the case study is not a claim of legal certification.
Designed COA-to-catalog workflow
- CaptureAdd the certificate and its source details
- ReviewCheck the extracted results and coverage
- LinkAssociate evidence with the applicable product or variant
- DeriveShow lab-sourced values in the catalog
- CheckExplain any publication blocker
The Lab Result stays authoritative; catalog values are derived from it.
A schema for the data, not a substitute for the product model
Existing standards and vendor formats did not give this catalog a complete, suitable product-data contract. Green Loom developed the public, versioned Cannabis Product Schema to define the shape of exchanged product documents. Its jurisdiction-neutral core describes Product, Package, LabResult, Label, and Party. A separate Georgia hemp profile adds local constraints without hard-coding them into core.
The schema and Retail application do different jobs. The schema makes incoming and outgoing product data checkable. Retail still needs distinct Product, Variant, Listing, Inventory, and Lab Result records so an operator can edit, publish, or adjust the right thing. Publishing the schema is a concrete output, not evidence of industry adoption or legal approval.
Jurisdiction-neutral core
- Product
- Package
- LabResult
- Label
- Party
Georgia hemp profile
Allowed forms, testing evidence, labeling, and potency constraints
Applied to core data, not embedded in coreOne model, two speeds of work
The interface direction followed the model. A guided first-publish path helps a new operator create the needed records in sequence. Returning operators can work directly in catalog and inventory views instead of reopening a wizard for every change.
We selected this object-first approach after comparing it with a journey-led launchpad and a cross-object work queue. The tradeoff is that direct workspaces support routine work, but the first-use path must explain unfamiliar terms without exposing every underlying object at once. The selected concept and initial wireframe baseline were approved as design direction, not as usability findings.

Outcome
A clearer model, with validation still ahead
The work moved the catalog from overlapping product concepts to a selected information architecture, an approved wireframe baseline, and a published schema. Later high-fidelity work remains a design candidate, and an operator pilot is active. Direct operator evidence, accessibility review, and other specialist checks are still needed before claiming the experience works in practice.
My takeaway is that simplifying a regulated workflow does not mean hiding its rules. It means keeping the right evidence authoritative and showing people why an action is available, blocked, or incomplete.