SPB Git forge

spb/rareindex

Public
54commits 1branches 0releases
7.1 MBsize
maindefault branch
10 days agolast push
TypeScript 61.9% HTML 37.2% SQL 0.7%
2.2 KB · 32 lines markdown
Rendered Raw Blame History
1# Livestock connector (`livestock`)23- Source: https://www.deadstock.ca · dealer · CA · CAD · Shopify storefront4- Acquisition: public `/collections/<handle>/products.json?limit=250&page=N` (shared `ShopifyStoreConnector` adapter wrapped by `MarketPinnedShopifyConnector`, which adds a `localization=CA` cookie so Shopify Markets never geo-converts prices; no store-specific code)5- Records: `listing` (asking prices, one per variant; out-of-stock variants → `ended`)6- Refresh: every 24 h (NORMAL, small catalogue) · history: none (listings only)78Canadian sneaker boutique (Livestock, deadstock.ca). Shopify storefront; sizes as variants with structured SKU (style|colour|size). Retail asks, not resale.910## Collections → taxonomy11| collection handle | category | brand / franchise / series |12|---|---|---|13| `footwear` | `sneakers` | — |14| `footwear-adidas` | `adidas_yeezy` | adidas |15| `footwear-jordan` | `nike_jordan` | Jordan |16| `footwear-asics` | `new_balance_asics_other` | ASICS |17| `footwear-converse` | `new_balance_asics_other` | Converse |1819Rules (first match wins, applied to "title | product_type | tags | collection"):20- `\b(air )?jordan\b|\bnike\b` → `nike_jordan`21- `\badidas\b|\byeezy\b` → `adidas_yeezy`22- `new balance|\basics\b|\bsalomon\b|\bhoka\b|\bpuma\b|\breebok\b|\bsaucony\b|\bconverse\b|\bvans\b|\bon running\b|\bmizuno\b` → `new_balance_asics_other`2324Excluded (regex): `gift card|^[^|]*\|(?![^|]*Footwear \|)[^|]*\||birkenstock|\bsandals?\b|\bslides?\b|\bclogs?\b|\bmules?\b|\bloafers?\b|\bboots?\b|\bugg\b|\bcrocs\b|\bsocks?\b|\blaces\b|insoles?|cleaner|shoe trees?`2526## Access & compliance27See `accessNotes` in meta.json: robots.txt verified 2026-09-08 (standard Shopify rules, products.json paths allowed), honest UA, 1 req / 1.5 s, listings only, no personal data. Not fetched: apparel, accessories (G-Shock, headwear, bags), lifestyle/home goods; non-sneaker footwear is dropped by the exclude regex (sandals, Birkenstock, boots).2829## Fixtures & tests30`data/fixtures/livestock/` — live captures (`pnpm tsx connectors/api/_g3-shops-na-lib/capture.ts livestock`), trimmed single-product payloads incl. a sold-out variant.31`pnpm vitest run connectors/api/livestock` · live probe: `pnpm tsx connectors/api/_g3-shops-na-lib/probe.ts livestock`.32