Pour one locale pack into every App Store Connect field.
The narrow, local-first Chrome side panel for ASO ops — stop hand-pasting metadata, keep Save / Submit manual.
If Packpour saves you time, please ⭐ star this repo — it helps other indie devs and ASO folks discover it.
English | 简体中文 | 繁體中文 | 日本語 | 한국어 | Français | Deutsch | Español | Português | Italiano
Packpour is a Chrome side panel scoped to appstoreconnect.apple.com. You already have AI write solid ASO copy — the bottleneck is moving it into App Store Connect, locale by locale, field by field. Packpour does that narrow step and nothing else.
Drop in a TXT or Markdown metadata pack, pick a locale, click Pour. Every labeled block lands in the matching field on the current page. Save and Submit stay manual — because for this workflow, a safe boundary beats "full auto".
Import a structured TXT or Markdown file with labeled blocks (NAME, SUBTITLE, DESCRIPTION, KEYWORDS, PROMOTIONAL TEXT, SUPPORT URL, etc.). Packpour pours each value into the matching field on the current App Store Connect locale page in one click.
Fields are matched by label first, then placeholder, aria-label, neighboring text, name, and id. If none match, Packpour falls back to filling the focused field — so even unusual ASC layouts stay workable.
Password, payment, token, and secret-looking fields are always skipped. Packpour never clicks Save, Publish, or Submit for Review. Every action stops one step before commit — you review, you submit.
Metadata packs live in Chrome's local storage. Nothing leaves your browser — no analytics, no cloud, no third-party servers. The extension is scoped by manifest to appstoreconnect.apple.com only.
The in-extension Help tab ships a prompt that turns a one-sentence app idea into a complete multi-locale metadata pack, across every App Store language. Paste it to Claude / ChatGPT / Gemini / any model — get a ready-to-pour file back.
UI strings ship in English, Simplified Chinese, Traditional Chinese, Japanese, Korean, French, German, Spanish, Portuguese, and Italian. Auto-picks your Chrome language; the side panel lets you switch manually.
Your AI (Claude / ChatGPT / Gemini / local model)
↓ "write me an ASO pack for <app idea>, every locale"
Metadata pack (TXT or Markdown, one labeled block per field)
↓ import into Packpour side panel
App Store Connect locale page (you open the locale you want to fill)
↓ click "Pour"
Fields matched by label / placeholder / aria-label / name / id / focus
↓ values written in place · Save / Submit still manual
You review and commit
No remote server in the loop. No background sync. Packpour is one click between your pack and the current ASC page.
- Install — Add Packpour from the Chrome Web Store.
- Open App Store Connect — Navigate to your app's metadata page for the locale you want to fill.
- Open Packpour — Click the Packpour icon to open the side panel, import your TXT / Markdown pack.
- Pour — Select the locale, click Pour. Review the filled fields, click Save yourself.
Each locale file uses stable field labels with a value block below each label:
NAME
My App Name
SUBTITLE
Short ASO subtitle
PROMOTIONAL TEXT
Short launch or update copy.
DESCRIPTION
Long App Store description.
KEYWORDS
comma,separated,keywords
SUPPORT URL
https://example.com/support
MARKETING URL
https://example.com
PRIVACY POLICY URL
https://example.com/privacy
The in-extension Help tab has an AI prompt that generates this exact format from one app idea, across every App Store locale.
| Manual copy-paste | Full-auto scraper / bot | iTMSTransporter + fastlane | Packpour | |
|---|---|---|---|---|
| Setup | None — just you | Node project, CI, tokens | CLI toolchain, .itc creds |
Load unpacked, one install |
| Review before submit | ✅ | ❌ or weak | ✅ (scripted) | ✅ by design — never auto-submits |
| Per-locale cost | Tens of minutes | Low per run, high setup | Medium per release | ~1 minute per locale |
| Handles ASC layout changes | You adapt | Breaks silently | Needs spec update | Field matching degrades gracefully |
| Credentials needed | Your ASC login | App-Specific Password / API key | .itc-transporter-session |
None beyond your browser session |
| Scope | Whatever you click | Full App Store Connect surface | Full pipeline | Just the current locale page |
| Privacy | Local | Often cloud | Local | 100% local, side panel only |
Packpour is narrow on purpose. If you want full-release automation, use fastlane. If you want quick, safe, per-locale metadata filling while keeping human review, Packpour is for you.
local/ Chrome extension source (point "Load unpacked" here)
manifest.json
popup.{html,js,css}
content.js · background.js
_locales/ Chrome i18n (appName, appDescription per locale)
icons/ 16 / 32 / 48 / 128 PNG icons
github/
README.md this file
README.*.md nine translations
LICENSE MIT
pack-release.sh build script (reads local/manifest.json)
releases/ local zip staging (gitignored)
site/ GitHub Pages landing page
.github/workflows/pages.yml
From the project root:
bash github/pack-release.shWrites github/releases/Packpour-v{version}.zip using the version in local/manifest.json. Upload that zip as an asset on a new GitHub release tagged v{version}.
- Website: hooosberg.github.io/Packpour
- Download: Chrome Web Store
- Privacy Policy: site/privacy.html
- Terms of Service: site/terms.html
- GitHub: hooosberg/Packpour
- Email: zikedece@proton.me
Built by hooosberg:
- AgentLimb — teach AI to control your browser
- BeRaw — Behance raw-image grabber
- WitNote — local-first AI writing companion
- GlotShot — perfect App Store preview images
- TrekReel — outdoor trails, cinematic reels
- DOMPrompter — visualize DOM for AI code
- UIXskills — AI → JSON → Whiteboard → UI
MIT — free for personal and team use. Contributions welcome via pull request.
Not affiliated with Apple. App Store Connect and all Apple trademarks belong to Apple Inc.
Copyright © 2026 hooosberg. All rights reserved.
