asc-app-wall

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

asc app-wall — Submit Your App to the App Wall

asc app-wall — 提交你的应用到应用墙

Adds your app to the community showcase at asccli.app/#app-wall by forking
tddworks/asc-cli
, adding your entry to
homepage/apps.json
, and opening a pull request — all in one command.
No ASC authentication required. Only a GitHub token is needed.
通过fork
tddworks/asc-cli
、在
homepage/apps.json
中添加你的条目并发起Pull Request,只需一条命令即可将你的应用添加至asccli.app/#app-wall的社区展示区。
无需ASC身份验证,仅需GitHub令牌即可。

Command

命令

bash
asc app-wall submit [options]
FlagRequiredDescription
--developer
Display handle on the card; when omitted, uses iTunes artist name
--developer-id
✓*Apple developer/seller ID — auto-fetches all your App Store apps
--app-id
✓*App Store Connect app ID (repeatable)
--github
GitHub username
--x
X/Twitter handle
--app
✓*Specific App Store URL (repeat for multiple)
--github-token
GitHub token (or set
GITHUB_TOKEN
/
gh auth login
)
✓* At least one of
--developer-id
,
--app-id
, or
--app
is required — without it there are no apps to display on the wall.
bash
asc app-wall submit [options]
标识必填说明
--developer
在卡片上显示的开发者标识;若省略,则使用iTunes艺术家名称
--developer-id
✓*Apple开发者/销售者ID — 自动获取你所有的App Store应用
--app-id
✓*App Store Connect应用ID(可重复使用)
--github
GitHub用户名
--x
X/Twitter账号
--app
✓*特定的App Store链接(可重复添加多个)
--github-token
GitHub令牌(或设置环境变量
GITHUB_TOKEN
/ 执行
gh auth login
✓* 至少需要提供
--developer-id
--app-id
--app
中的一个 — 否则没有可展示在应用墙上的应用。

Typical Workflow

典型工作流程

bash
undefined
bash
undefined

1. Authenticate with GitHub (once)

1. 完成GitHub身份验证(仅需一次)

gh auth login
gh auth login

or: export GITHUB_TOKEN="ghp_..."

或:export GITHUB_TOKEN="ghp_..."

2. Submit — the CLI handles fork + commit + PR automatically

2. 提交应用 — CLI会自动处理fork、提交和PR创建

asc app-wall submit
--developer "yourhandle"
--developer-id "1234567890"
--github "yourgithub"
--x "yourx"
--pretty
asc app-wall submit
--developer "yourhandle"
--developer-id "1234567890"
--github "yourgithub"
--x "yourx"
--pretty

3. Open the PR in your browser (URL is in the output)

3. 在浏览器中打开PR(链接会在输出结果中显示)

Two Submission Modes

两种提交模式

Mode A — all apps by developer ID (recommended):
bash
asc app-wall submit \
  --developer "itshan" \
  --developer-id "1725133580" \
  --github "hanrw"
Find your Apple developer ID at
https://apps.apple.com/us/developer/name/id<NUMBER>
.
Mode B — specific App Store URLs:
bash
asc app-wall submit \
  --developer "itshan" \
  --app "https://apps.apple.com/us/app/my-app/id123456789" \
  --app "https://apps.apple.com/us/app/other-app/id987654321"
Both modes can be combined in one command.
模式A — 通过开发者ID提交所有应用(推荐):
bash
asc app-wall submit \
  --developer "itshan" \
  --developer-id "1725133580" \
  --github "hanrw"
可在
https://apps.apple.com/us/developer/name/id<NUMBER>
找到你的Apple开发者ID。
模式B — 通过特定App Store链接提交:
bash
asc app-wall submit \
  --developer "itshan" \
  --app "https://apps.apple.com/us/app/my-app/id123456789" \
  --app "https://apps.apple.com/us/app/other-app/id987654321"
两种模式可在同一条命令中组合使用。

JSON Output

JSON输出

json
{
  "data": [
    {
      "affordances": {
        "openPR": "open https://github.com/tddworks/asc-cli/pull/42"
      },
      "developer": "itshan",
      "id": "42",
      "prNumber": 42,
      "prUrl": "https://github.com/tddworks/asc-cli/pull/42",
      "title": "feat(app-wall): add itshan"
    }
  ]
}
json
{
  "data": [
    {
      "affordances": {
        "openPR": "open https://github.com/tddworks/asc-cli/pull/42"
      },
      "developer": "itshan",
      "id": "42",
      "prNumber": 42,
      "prUrl": "https://github.com/tddworks/asc-cli/pull/42",
      "title": "feat(app-wall): add itshan"
    }
  ]
}

What Happens Under the Hood

底层执行流程

  1. Authenticates with GitHub using your token
  2. Forks
    tddworks/asc-cli
    (idempotent — safe to run multiple times)
  3. Syncs the fork to upstream
    main
  4. Fetches current
    homepage/apps.json
    from your fork
  5. Checks for duplicate (
    developer
    field)
  6. Creates branch
    app-wall/<developer>
  7. Commits updated
    apps.json
    to that branch
  8. Opens a PR against
    tddworks/asc-cli:main
  1. 使用你的令牌完成GitHub身份验证
  2. Fork
    tddworks/asc-cli
    (幂等操作 — 可安全重复执行)
  3. 将fork仓库与上游
    main
    分支同步
  4. 从你的fork仓库获取当前的
    homepage/apps.json
    文件
  5. 检查是否存在重复条目(基于
    developer
    字段)
  6. 创建分支
    app-wall/<developer>
  7. 将更新后的
    apps.json
    提交至该分支
  8. tddworks/asc-cli:main
    发起PR

Error Cases

错误场景

ErrorCauseFix
Provide --developer-id or at least one --app URL
Neither flag suppliedAdd
--developer-id
or
--app
GitHub token required
No token foundPass
--github-token
, set
GITHUB_TOKEN
, or run
gh auth login
Developer X is already listed
Duplicate
developer
in
apps.json
Entry already submitted; check existing PR
Timed out waiting for fork
Fork creation took > 24 secondsRetry after a moment
GitHub API error (422)
Branch already existsSafe to ignore — command continues
错误信息原因解决方法
Provide --developer-id or at least one --app URL
未提供任一必填标识添加
--developer-id
--app
参数
GitHub token required
未找到GitHub令牌传入
--github-token
、设置环境变量
GITHUB_TOKEN
或执行
gh auth login
Developer X is already listed
apps.json
中已存在相同
developer
的条目
条目已提交;请检查现有PR
Timed out waiting for fork
Fork创建耗时超过24秒稍后重试
GitHub API error (422)
分支已存在可忽略此错误 — 命令会继续执行

apps.json Format

apps.json格式

The entry added to
homepage/apps.json
:
json
{
  "developer": "yourhandle",
  "developerId": "1234567890",
  "github": "yourgithub",
  "x": "yourx"
}
Nil fields are omitted automatically. After the PR is merged,
fetch-apps-data.js
regenerates
apps-data.json
to pull in your apps from the iTunes API.
添加至
homepage/apps.json
的条目格式:
json
{
  "developer": "yourhandle",
  "developerId": "1234567890",
  "github": "yourgithub",
  "x": "yourx"
}
空字段会被自动省略。PR合并后,
fetch-apps-data.js
会重新生成
apps-data.json
,从iTunes API拉取你的应用信息。

See Also

相关链接

  • Full feature doc:
    docs/features/app-wall.md
  • App wall live:
    https://asccli.app/#app-wall
  • Upstream repo:
    https://github.com/tddworks/asc-cli
  • 完整功能文档:
    docs/features/app-wall.md
  • 应用墙在线地址:
    https://asccli.app/#app-wall
  • 上游仓库:
    https://github.com/tddworks/asc-cli