---
id: "2.1"
title: "Product overview"
dept: product
status: draft
owner: Param
branded: false
last_verified: 2026-10-26
sources:
  - "brew origin/main b91e364: SCOPE.md:1-55, SPEC.md:1-20, DUMMY.md:10"
  - "brew origin/main: docs/handover/product/00-overview.md:7-11, docs/brew-loop.md:1-15"
  - "brew origin/main: tools/prod-env.sh:9, commit 0fc7cfc"
  - "brew .wt-prod docs/production.md:3-21"
  - "brew working tree docs/pricing.md:1-51, not on origin/main"
  - "brand-directions/BRIEF.md:26-34, 3.6"
  - "brand-directions/_shared/product-model.md:22-65, ia.md:7-52"
  - "brand-directions/docs2/content/pages.mjs:64-80, 262-280, decisions.mjs:3-23, inventory.mjs"
  - "brand-directions/docs2/data/plays.json, catalogue.json, map.json"
  - "memory: brew-live-stores, brew-prod-backend, brew-name-and-scope, brew-go-live-2026-10-17, brew-pricing-parked, brand-directions-2026-10-25"
---

# Product overview

## Answer

Brew is an AI marketing team for online stores: paste a store link, get this week's marketing ideas already drafted from real evidence, make the good ones and hand them to whoever ships, and in v1 it never posts, spends, sends to customers or measures.

## Today

### The promise

- Inside line: "Your store's marketing team, in one feed." [src: docs/handover/product/00-overview.md:7]
- The line a founder repeats: paste your store link, get this week's marketing ideas, already drafted, pick the good ones and hand them off [src: brand-directions/BRIEF.md:30]
- Stage: design partnership, building before launch, with real brands [src: brand-directions/BRIEF.md:32] [src: memory brew-live-stores]

### The loop

| Step | What happens today | Source |
|---|---|---|
| Evidence | Brew reads the store, catalog, reviews, ads, search, AI answers, socials and rivals, then keeps reading on a cadence | [src: SCOPE.md:11] [src: docs/brew-loop.md:5] |
| Plays | The evidence becomes written Plays: 65 kinds, each with why, what we found, the plan and what to watch | [src: brand-directions/docs2/data/plays.json] |
| Feed | Plays, ideas, listening, stories and watchers become one ranked feed, most cards with a first draft | [src: SCOPE.md:13] |
| Jam | The team makes the piece with AI and each other, every version kept | [src: SCOPE.md:18] |
| Hand-off | A brief written for whoever ships it, sent from the brand's own email, or a tracked send to our team | [src: SCOPE.md:20] [src: team-brief.js:20] |
| Learnings | What the team tells Brew, drops in or does rewrites the Plays and the feed | [src: brand-directions/docs2/content/pages.mjs:157-165] |

### Size of the product today

| Thing | Count | Source |
|---|---|---|
| Sources read | 68 in the inventory: 60 read today, 7 once an account connects, 1 off | [src: brand-directions/docs2/content/inventory.mjs] |
| Plays | 65: 50 core, 13 from listening, 2 automation | [src: brand-directions/docs2/data/plays.json] |
| Card kinds | 34 | [src: brand-directions/docs2/content/inventory.mjs] |
| Deliverables | 40 in ten groups | [src: brand-directions/docs2/data/catalogue.json] |
| Surfaces in the build | 309, of which 267 change, 36 go and 6 are new in tomorrow's map | [src: brand-directions/docs2/data/map.json] |
| Workflow templates | 20, specified, not built | [src: brand-directions/docs2/content/pages.mjs:338-359] |

### Where it runs

| Site | What it is | Source |
|---|---|---|
| feed.joinsquareup.com | Production, where the five design partners live since 25 Oct | [src: brew .wt-prod docs/production.md:3] [src: memory brew-prod-backend] |
| brew.joinsquareup.com | Staging, where every change runs first | [src: brew .wt-prod docs/production.md:3] |
| demo.joinsquareup.com | Showcase with a sandbox per visitor and simulated accounts | [src: SCOPE.md:30] [src: DUMMY.md:19] |

### Who uses it

- Design partner prospects on production: Arata, Nutrova, Mana, Puma India, Scrubroom [src: memory brew-live-stores]
- Test brands: Cozy Snugglet and Zenant [src: memory brew-live-stores]
- Gully Labs was named the first design partner on 17 Oct and is not in the 24 Oct list [src: memory brew-go-live-2026-10-17] [src: memory brew-live-stores]

### How it is built to behave

- AI on production: Plays on gemini-3.1-pro-preview, everything else on gemini-3.5-flash [src: tools/prod-env.sh:9]
- Finals on production are made on Gemini; Sloosh is off until Param says [src: commit 0fc7cfc]
- Connected accounts are real and read only on the live sites since 16 Oct [src: SCOPE.md:14]
- Everything simulated is tagged Dummy in the UI, the code and DUMMY.md [src: DUMMY.md:3-10]
- Pricing is a proposal only, with no billing code: plan, wallet and a v4 autopilot share [src: brew working tree docs/pricing.md:3] [src: memory brew-pricing-parked]

### What it does not do in v1

Post, schedule, launch, pause, move budget, write to any account, send marketing email or WhatsApp to customers, measure or grade results [src: SCOPE.md:32-44]. The full list is in the [v1 PRD](v1-prd.md).

## Tomorrow

| Item | Version | Tag | Notes |
|---|---|---|---|
| The story: get found, get chosen, get them back | v1 | New | Every pick serves one of the three [src: brand-directions/_shared/product-model.md:24-26] |
| The week as the unit: we read, you pick, you make, someone ships | v1 | New | Monday drop of five picks [src: brand-directions/_shared/product-model.md:27-33] |
| Three tabs, Today, Work, Your store, Settings behind your picture | v1 | Changes | Six addresses in all [src: brand-directions/_shared/ia.md:52] |
| One Hand it off with four routes | v1 | Changes | Me, My team, My agency or freelancer, Our team |
| Posts and schedules after your yes, and workflows | v2 | New | [v2 PRD](v2-prd.md) |
| Measures what went out and grades the Plays | v3 | New | [v3 PRD](v3-prd.md) |
| Runs ads inside rules and a budget, with undo | v4 | New | [v4 PRD](v4-prd.md) |
| The name Brew | all | Changes | The future name is open; five brand directions audition [src: memory brand-directions-2026-10-25] |

## How we do it

1. Start every product change from SCOPE.md, SPEC.md and DUMMY.md on origin/main.
2. Follow the [product rules](product-rules.md): truth first, read only, one version, every brand.
3. Write or change a feature's row in the [v1 PRD](v1-prd.md) with an acceptance line someone can check.
4. Ship to staging, check on the five partners, then promote to production with the clean gate.
5. Log what partners and Param say in the [partner feedback log](partner-feedback-log.md).

## Numbers

| Metric | Definition | Where measured | Status |
|---|---|---|---|
| Weekly hand-off stores | Stores where anyone on the team hands off at least one pick in a Monday to Sunday week | Brief records today, a decision log tomorrow | Proposed, defined in [product metrics](product-metrics.md) |
| Partners live | Design partner brands whose home is production | `MOVED_TO_PROD` list on staging | 5 since 25 Oct [src: memory brew-prod-backend] |

## Open

1. **Is Gully Labs still a design partner?** Proposal: treat it as a past prospect and keep the five in brew-live-stores as the list.
2. **India first, or global from day one?** The read asks the market and never defaults it [src: CLAUDE.md:31-32]; every partner today is Indian. Proposal: India first through the design partnership, with no India-only code.
3. **The product's future name.** Proposal: decide it with the brand direction, then rename in one pass.
4. **When does v2 start?** Proposal: after the v1 redesign ships to production and two partners hand off weekly for three weeks running.
