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.5 KB

# The Card Vault connector (thecardvault)

  • Source: https://thecardvault.co.uk · Glasgow hobby store: TCG singles (BinderPOS-style "Name (number)" titles with Foil / condition variants), sealed Pokémon/MTG/Yu-Gi-Oh!/One Piece/Lorcana, Panini & Topps sports boxes, Funko, Youtooz, Iron Studios statues, Nendoroids and Gunpla.
  • Country/currency: GB / GBP · type: dealer · engine: api (Shopify storefront products.json (public JSON))
  • Records: listing only (dealer asking prices; never sales — SPEC §111). One listing per variant (condition / size / finish), out-of-stock variants kept as ended.
  • Refresh: every 12 h (NORMAL class) · historical depth: none (no sold archive).

# How it works

Metadata-only connector: index.ts instantiates the shared ShopifyStoreConnector adapter; everything source-specific lives in meta.json config: collections → taxonomy slug (with brand/franchise/series), title/tag rules (first match wins), an exclude regex for accessories/apparel/events, a titlePattern that extracts name/set/number, and the shop currency. Anything unmapped is skipped, never guessed.

Collections read (17): singles-all-card-games (rules decide), pokemon-tcg-all-products → pokemon, magic-the-gathering-all-products → magic_the_gathering, sealed-yu-gi-oh-products → yugioh, one-piece-tcg-all-products → one_piece_card_game, disney-lorcana-all-products → disney_lorcana, dragon-ball-super-cg-all-products → dragon_ball_tcg, digimon-trading-card-game → digimon_tcg, weiss-schwarz-all-products → weiss_schwarz, star-wars-unlimited-all-products → star_wars_tcg, final-fantasy-tcg-all-products → final_fantasy_tcg, sports-cards-all-products → other_sports_cards, funko-pop-vinyl-figures → funko, youtooz-collectable-vinyl-figures → designer_toys, iron-studios-scale-statue → action_figures, good-smile-company-nendoroid-figures → action_figures, bandai-gunpla → gundam.

# Access & compliance

See accessNotes in meta.json (robots findings, endpoints, rate limit, what is not fetched). Host policy: connectors/domains.d/g4-shops-intl.json.

# Fixtures & tests

data/fixtures/thecardvault/*.json are live captures made with connectors/api/_g4-shops-intl-lib/capture.ts (trimmed payloads, expectations derived from the live record). index.test.ts runs the framework fixture suite, the g4 store invariants and a mapping unit test on titles observed live. Live probe: pnpm tsx connectors/api/_g4-shops-intl-lib/smoke.ts thecardvault.