# HeySomm

Complete product engineering

A live international wine app: venue QR entry and guest accounts, bottle recognition, personal matching, regional value assessments, a wine collection and social sharing.

**My role:** Co-founder / CTO — complete application and engineering

**Attribution:** Co-founder work

**Project status:** Live and operational

## The task

Someone standing in a venue or choosing a bottle needs useful advice before committing to an account: what is this wine, will I enjoy it, and is it good value here? The product connects that first visit to a taste profile, a personal collection and a result they can share.

## My contribution

As co-founder and CTO, I owned the complete application and engineering: guest identity and account upgrades, venue QR links, scanning and wine resolution, taste profiles and matching, global pricing, the collection, generated sharing media and the operating tools behind them.

## Product screens

Wine collection, scanning, assessments and taste profiles in HeySomm.

## What people can do

### Venue QR deep links

An in-venue QR code opens a short link into the scan flow, with retailer and store attribution carried into the visit. Destinations are resolved on the server, and links can expire or be revoked.

### Guest-first onboarding

New visitors receive a guest session automatically and can scan without a sign-in form. They can continue as a guest after taste onboarding, then upgrade the same account while keeping their scans and preferences.

### Personal taste and matching

A short varietal-and-region flow builds a taste profile and palate archetype. Each wine can then carry a personal Match Rating alongside its market-relative HeySomm Score, keeping “will I like it?” separate from “is it good value?”.

### A collection that remembers

Scanned wines form a searchable personal collection. People can mark wines they loved or dismissed, filter for matches, archive and restore entries, and revisit the original scan and assessment.

### Social sharing in multiple formats

A scan’s photo, wine identity, score and tasting summary become Post, Story or animated video media. The app previews the selected format and hands it to the device’s sharing interface, with a download path where sharing is unsupported.

### Advice beyond the score

Wine details bring together tasting notes, food pairings and occasion-fit guidance. Scan-derived Trade up suggestions use compatible saved assessments to surface better-value alternatives when the required evidence is available.

## How the system works — diagram

### From bottle photo to actionable local value

1. **Identify the wine:** Extract label details and resolve the product, vintage and bottle size.
2. **Resolve the market:** Identify the user’s country and relevant local market across supported regions.
3. **Select local pricing:** Select eligible regional retailer evidence with compatible currency, tax and purchase terms.
4. **Assess local value:** Combine wine knowledge and local price evidence for a quality-for-money assessment.
5. **Save the result:** Retain the assessment and its actual input evidence for the customer experience.

### Venue access and sharing

1. **Venue QR link:** Resolve the destination and retain retailer/store attribution.
2. **Guest session:** Start without a sign-in form or a permanent account.
3. **Scan a wine:** Get identification and a local value assessment.
4. **Build a profile:** Add taste preferences for a personal Match Rating; account upgrade can come later.
5. **Keep or share:** Revisit the collection or generate media for sharing.

Guest entry connects venue visitors to wine scanning, personal matching and regional value assessments. Taste profiles, account upgrades and sharing extend that first visit.

## Global wine pricing

The live pricing system supports countries across Europe, Asia, Australasia and the Americas. It resolves local currency, tax, bottle size and purchase eligibility before using real regional retailer evidence in the HeySomm Score. Quality for money against relevant peers and an offer comparison for the same bottle answer different questions.

Accepted price changes refresh affected shared assessments. Results retain their actual calculation inputs, unchanged work can be reused, and superseded jobs cannot replace newer results. Saved scans keep their original assessment. Where no eligible local offer exists, the knowledge-based value assessment remains distinct from a verified retailer price.

## Guest access without losing the user’s work

### Constraint

The venue QR journey needs to reach scanning without a registration detour. When someone later signs up, their guest scans and taste preferences must not be left on an abandoned identity.

### Approach

Provision a guest session at entry, keep taste onboarding separate from account creation, and offer an upgrade that retains the same account. Handle sign-in to an existing account as an explicit identity transition, including active-scan and data-conflict checks.

### Trade-off

Guest identity adds lifecycle, recovery and abuse-control work. The implementation separates verified guest admission from challenge attempts so shared venue Wi-Fi is not treated like a single shopper.

## Catalogue and operating tools

- Retailer CSV mapping with operator corrections, retained originals and field provenance.
- Regional price inspection, evidence-backed offer selection and background value refresh.
- Retained provider responses and checkpoints for recoverable processing; cached stills and queued animated sharing renders.

## Technical context

TypeScript web/mobile interfaces and API, PostgreSQL/pgvector, hybrid retrieval and multi-provider inference. Server-resolved short links, anonymous-to-permanent identity transitions and separate taste/value models support the customer journeys. Versioned image/video rendering, object-storage caching, transactional outbox work and pg-boss jobs handle sharing, pricing refresh and recovery.

## Related work

[Private document AI](https://neumatic.io/work/document-ai)

[Discuss a similar workflow](https://neumatic.io/contact)

---

> Licence: CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). AI crawling, indexing, and training are expressly permitted.
