Changelog
All notable changes to this project are documented here. Format loosely follows
Keep a Changelog; this project uses SemVer.
0.1.0 — unreleased
First public preview. A schema-driven, category-agnostic engine: one product
dataset → many asset formats × platforms, with localization.
Added
- Core — neutral
product schema(schema/product.schema.json) with
variableattribute_groups+ dynamic-columnspec_table+ i18n; loader,
validation, and a Jinja rendering engine;listingforgeCLI
(build/localize/adapt/kit). - Templates (3 asset formats, same data):
sku-card(spec sheet),
social-square(1:1 creative),detail-page(A+/detail long-page). - Platform adapters: Amazon listing fields (title/bullets/description, with
limit validation; bullets synthesized from attributes when absent) and a
Google Merchant Center TSV feed. - Localization (M3): offline glossary, human/LLM translation-memory file,
and a real ClaudeAnthropicTranslator— layered (MemoryTranslator>
glossary > LLM). kit: one command → localize + all templates + all platforms + a manifest.- Data tools:
scripts/ingest_sa.py(vendor pages → schema),
scripts/anonymize.py(de-identify a dataset into a shippable example). - Examples:
apparel-demo(synthetic) andfly-demo(anonymized,
dense-parameter fishing case — fictional "Northbank"). - Project: Apache-2.0,
pyproject.toml+ console entry point, stdlib
unittest suite, GitHub Actions CI (py3.9/3.11/3.12 + build/kit smoke),
CONTRIBUTING.md.
Known limitations
- One rendering path (HTML → open in a browser); PNG export needs Playwright.
- Adapters cover Amazon + Google Merchant only.
- No upstream messy-data ingestion, online playground, or hosted service yet.