2 Commits

Author SHA1 Message Date
DIYgod 0dca01f3f0 feat(store-assets): add App Store creative assets and custom product pages
Creative assets: a `creative` layout renders the universal 16:9 image (5244 x
2950) that iOS and iPadOS 27 show as the product page header and in search
results, one per App Store locale, with the hero copy and the Mac and iPhone
kept inside the area both crops show. `scripts/app-store-creative.ts upload`
puts them into the Asset Library and `assign` places the approved ones on
every localization of the live iOS version.

Custom product pages: `src/custom-pages.ts` defines three pages (AI reading,
podcasts and video, RSS and RSSHub) by screenshot order, and each locale's
app-store.json gains their promotional text and the keywords they take over
from the iOS keyword field. check-listing.ts checks the limits and that every
keyword comes from that field and leads to one page.
`scripts/app-store-custom-pages.ts sync | submit` creates the pages, their
localizations, keywords and screenshots, and sends them to App Review.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 14:04:55 +08:00
DIYgod 2131cec389 chore(store-assets): add the store screenshot and listing pipeline
Store copy for 12 listing locales, plus the tooling that captures the apps
with a demo account and renders the App Store, Google Play and Microsoft
Store screenshots and the README banner. Raw captures and rendered images
stay out of the repository (store-assets/.gitignore).

store-assets is a private workspace package, so playwright, sharp, pathe and
the other script dependencies are declared instead of resolved through
hoisting, and turbo typechecks it. The lockfile only gains its importer.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 14:34:42 +08:00