From c394800d9f3b035ab313d4dad6ef541aea92a3fb Mon Sep 17 00:00:00 2001 From: skywardboundd Date: Tue, 23 Jun 2026 15:17:58 +0300 Subject: [PATCH 1/6] upd(create appkit): manifest --- packages/create-ton-appkit/README.md | 2 +- packages/create-ton-appkit/src/index.ts | 6 +++--- .../template-react/public/tonconnect-manifest.json | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/create-ton-appkit/README.md b/packages/create-ton-appkit/README.md index 2a647659a..72f94428a 100644 --- a/packages/create-ton-appkit/README.md +++ b/packages/create-ton-appkit/README.md @@ -31,7 +31,7 @@ pnpm create ton-appkit my-app --template react --app-url https://example.com -y |------|-------|-------------|---------| | `[project-name]` | | Project directory name | `my-ton-app` | | `--template ` | `-t` | Template to use | `react` | -| `--app-url ` | | App URL for TonConnect manifest | `https://your-app.example.com` | +| `--app-url ` | | App URL for TonConnect manifest | `https://appkit-template.vercel.app` | | `--overwrite` | `-o` | Overwrite existing directory | `false` | | `--yes` | `-y` | Accept all defaults (non-interactive) | `false` | | `--help` | `-h` | Show help message | | diff --git a/packages/create-ton-appkit/src/index.ts b/packages/create-ton-appkit/src/index.ts index 71fe94d39..27b1d2bb6 100644 --- a/packages/create-ton-appkit/src/index.ts +++ b/packages/create-ton-appkit/src/index.ts @@ -197,12 +197,12 @@ async function run(): Promise { let appUrl = argv['app-url'] as string | undefined; if (!appUrl) { if (useDefaults) { - appUrl = 'https://your-app.example.com'; + appUrl = 'https://appkit-template.vercel.app'; } else { const result = await prompts.text({ message: 'App URL (for TonConnect manifest)', - placeholder: 'https://your-app.example.com', - defaultValue: 'https://your-app.example.com', + placeholder: 'https://appkit-template.vercel.app', + defaultValue: 'https://appkit-template.vercel.app', }); if (prompts.isCancel(result)) { prompts.cancel('Cancelled.'); diff --git a/packages/create-ton-appkit/template-react/public/tonconnect-manifest.json b/packages/create-ton-appkit/template-react/public/tonconnect-manifest.json index 165ac3585..886df16ff 100644 --- a/packages/create-ton-appkit/template-react/public/tonconnect-manifest.json +++ b/packages/create-ton-appkit/template-react/public/tonconnect-manifest.json @@ -1,5 +1,5 @@ { - "url": "https://your-app.example.com", + "url": "https://appkit-template.vercel.app", "name": "TON AppKit Template", - "iconUrl": "https://your-app.example.com/favicon.svg" + "iconUrl": "https://appkit-template.vercel.app/favicon.svg" } From 4d998bbf3790a6bb6780393467a98d30d3103ff0 Mon Sep 17 00:00:00 2001 From: skywardboundd Date: Tue, 23 Jun 2026 16:29:20 +0300 Subject: [PATCH 2/6] upd(create appkit): ci check --- .github/workflows/create_ton_appkit_test.yml | 29 ++++++++++++++++---- 1 file changed, 23 insertions(+), 6 deletions(-) diff --git a/.github/workflows/create_ton_appkit_test.yml b/.github/workflows/create_ton_appkit_test.yml index 2b7830051..148282684 100644 --- a/.github/workflows/create_ton_appkit_test.yml +++ b/.github/workflows/create_ton_appkit_test.yml @@ -57,14 +57,31 @@ jobs: TARBALL="$(ls create-ton-appkit-*.tgz)" echo "TARBALL=$(pwd)/$TARBALL" >> "$GITHUB_ENV" - - name: Install create-ton-appkit globally - shell: bash - run: npm install -g "$TARBALL" - - - name: Scaffold a project + - name: Scaffold a project via "create" (${{ matrix.pm }}) shell: bash working-directory: ${{ runner.temp }} - run: create-ton-appkit my-app -y --template react --app-url https://example.com + run: | + set -euo pipefail + # Run the crate's bin straight from the locally built tarball, exercised through + # each package manager so the matrix tests the crate itself, not a published copy. + APP_URL=https://example.com + args=(my-app -y --template react --app-url "$APP_URL") + case "${{ matrix.pm }}" in + npm) npm exec --yes --package="$TARBALL" -- create-ton-appkit "${args[@]}" ;; + pnpm) pnpm --package="$TARBALL" dlx create-ton-appkit "${args[@]}" ;; + # Yarn Classic and Bun have no dlx/exec for a local tarball — install the bin globally, then run it. + yarn) yarn global add "file:$TARBALL" + export PATH="$(yarn global bin):$PATH" + create-ton-appkit "${args[@]}" ;; + bun) bun install -g "$TARBALL" + export PATH="$HOME/.bun/bin:$PATH" + create-ton-appkit "${args[@]}" ;; + esac + + # Sanity-check the generated TonConnect manifest got the requested app URL. + manifest="my-app/public/tonconnect-manifest.json" + grep -q "\"url\": \"$APP_URL\"" "$manifest" + grep -q "\"iconUrl\": \"$APP_URL/favicon.svg\"" "$manifest" - name: Install dependencies (${{ matrix.pm }}) shell: bash From 41f3c1ea7ee33790733a4112b4231626ce78a7ae Mon Sep 17 00:00:00 2001 From: skywardboundd Date: Tue, 23 Jun 2026 19:11:39 +0300 Subject: [PATCH 3/6] fix --- .github/workflows/create_ton_appkit_test.yml | 11 ++++------- packages/create-ton-appkit/template-react/_env | 2 +- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/.github/workflows/create_ton_appkit_test.yml b/.github/workflows/create_ton_appkit_test.yml index 148282684..8faf3b7b7 100644 --- a/.github/workflows/create_ton_appkit_test.yml +++ b/.github/workflows/create_ton_appkit_test.yml @@ -57,27 +57,24 @@ jobs: TARBALL="$(ls create-ton-appkit-*.tgz)" echo "TARBALL=$(pwd)/$TARBALL" >> "$GITHUB_ENV" - - name: Scaffold a project via "create" (${{ matrix.pm }}) + - name: Scaffold a project from the local tarball (${{ matrix.pm }}) shell: bash working-directory: ${{ runner.temp }} run: | set -euo pipefail - # Run the crate's bin straight from the locally built tarball, exercised through - # each package manager so the matrix tests the crate itself, not a published copy. APP_URL=https://example.com args=(my-app -y --template react --app-url "$APP_URL") + tdir="$(dirname "$TARBALL")"; tname="$(basename "$TARBALL")" case "${{ matrix.pm }}" in npm) npm exec --yes --package="$TARBALL" -- create-ton-appkit "${args[@]}" ;; pnpm) pnpm --package="$TARBALL" dlx create-ton-appkit "${args[@]}" ;; - # Yarn Classic and Bun have no dlx/exec for a local tarball — install the bin globally, then run it. - yarn) yarn global add "file:$TARBALL" + yarn) (cd "$tdir" && yarn global add "file:$tname") export PATH="$(yarn global bin):$PATH" create-ton-appkit "${args[@]}" ;; - bun) bun install -g "$TARBALL" + bun) bun add -g "$TARBALL" export PATH="$HOME/.bun/bin:$PATH" create-ton-appkit "${args[@]}" ;; esac - # Sanity-check the generated TonConnect manifest got the requested app URL. manifest="my-app/public/tonconnect-manifest.json" grep -q "\"url\": \"$APP_URL\"" "$manifest" diff --git a/packages/create-ton-appkit/template-react/_env b/packages/create-ton-appkit/template-react/_env index ad3550dd8..4f02f821b 100644 --- a/packages/create-ton-appkit/template-react/_env +++ b/packages/create-ton-appkit/template-react/_env @@ -3,4 +3,4 @@ VITE_TONCENTER_API_KEY= # Override the TonConnect manifest URL. Defaults to ${origin}/tonconnect-manifest.json. -# VITE_TONCONNECT_MANIFEST_URL=https://your-app.example.com/tonconnect-manifest.json +# VITE_TONCONNECT_MANIFEST_URL=https://appkit-template.vercel.app/tonconnect-manifest.json From 4f01d06ce918bf4e3e0b2bf123dde9007cbd5436 Mon Sep 17 00:00:00 2001 From: skywardboundd Date: Tue, 23 Jun 2026 19:34:34 +0300 Subject: [PATCH 4/6] fix yarn CI --- .github/workflows/create_ton_appkit_test.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/create_ton_appkit_test.yml b/.github/workflows/create_ton_appkit_test.yml index 8faf3b7b7..baf959773 100644 --- a/.github/workflows/create_ton_appkit_test.yml +++ b/.github/workflows/create_ton_appkit_test.yml @@ -64,11 +64,12 @@ jobs: set -euo pipefail APP_URL=https://example.com args=(my-app -y --template react --app-url "$APP_URL") - tdir="$(dirname "$TARBALL")"; tname="$(basename "$TARBALL")" + tname="$(basename "$TARBALL")" case "${{ matrix.pm }}" in npm) npm exec --yes --package="$TARBALL" -- create-ton-appkit "${args[@]}" ;; pnpm) pnpm --package="$TARBALL" dlx create-ton-appkit "${args[@]}" ;; - yarn) (cd "$tdir" && yarn global add "file:$tname") + yarn) cp "$TARBALL" "./$tname" + yarn global add "file:./$tname" export PATH="$(yarn global bin):$PATH" create-ton-appkit "${args[@]}" ;; bun) bun add -g "$TARBALL" From bddc1340344abcba6223b555badf8b95f71c204f Mon Sep 17 00:00:00 2001 From: skywardboundd Date: Tue, 23 Jun 2026 19:56:42 +0300 Subject: [PATCH 5/6] fix(ci create appkit): yarn --- .github/workflows/create_ton_appkit_test.yml | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) diff --git a/.github/workflows/create_ton_appkit_test.yml b/.github/workflows/create_ton_appkit_test.yml index baf959773..4c45415c4 100644 --- a/.github/workflows/create_ton_appkit_test.yml +++ b/.github/workflows/create_ton_appkit_test.yml @@ -57,25 +57,15 @@ jobs: TARBALL="$(ls create-ton-appkit-*.tgz)" echo "TARBALL=$(pwd)/$TARBALL" >> "$GITHUB_ENV" - - name: Scaffold a project from the local tarball (${{ matrix.pm }}) + - name: Scaffold a project from the local tarball shell: bash working-directory: ${{ runner.temp }} run: | set -euo pipefail APP_URL=https://example.com - args=(my-app -y --template react --app-url "$APP_URL") tname="$(basename "$TARBALL")" - case "${{ matrix.pm }}" in - npm) npm exec --yes --package="$TARBALL" -- create-ton-appkit "${args[@]}" ;; - pnpm) pnpm --package="$TARBALL" dlx create-ton-appkit "${args[@]}" ;; - yarn) cp "$TARBALL" "./$tname" - yarn global add "file:./$tname" - export PATH="$(yarn global bin):$PATH" - create-ton-appkit "${args[@]}" ;; - bun) bun add -g "$TARBALL" - export PATH="$HOME/.bun/bin:$PATH" - create-ton-appkit "${args[@]}" ;; - esac + cp "$TARBALL" "./$tname" + npm exec --yes --package="./$tname" -- create-ton-appkit my-app -y --template react --app-url "$APP_URL" # Sanity-check the generated TonConnect manifest got the requested app URL. manifest="my-app/public/tonconnect-manifest.json" grep -q "\"url\": \"$APP_URL\"" "$manifest" From bbd54b764e3069a0572d8f0399be7e09a3a6632f Mon Sep 17 00:00:00 2001 From: skywardboundd Date: Tue, 23 Jun 2026 22:14:27 +0300 Subject: [PATCH 6/6] upd --- .github/workflows/create_ton_appkit_test.yml | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/.github/workflows/create_ton_appkit_test.yml b/.github/workflows/create_ton_appkit_test.yml index 4c45415c4..8ccc389dc 100644 --- a/.github/workflows/create_ton_appkit_test.yml +++ b/.github/workflows/create_ton_appkit_test.yml @@ -57,15 +57,24 @@ jobs: TARBALL="$(ls create-ton-appkit-*.tgz)" echo "TARBALL=$(pwd)/$TARBALL" >> "$GITHUB_ENV" - - name: Scaffold a project from the local tarball + - name: Scaffold a project via " run" (${{ matrix.pm }}) shell: bash working-directory: ${{ runner.temp }} run: | set -euo pipefail APP_URL=https://example.com - tname="$(basename "$TARBALL")" - cp "$TARBALL" "./$tname" - npm exec --yes --package="./$tname" -- create-ton-appkit my-app -y --template react --app-url "$APP_URL" + tname="$(basename "$TARBALL")"; cp "$TARBALL" "./$tname" + + printf '{"name":"_scaffolder","private":true,"scripts":{"scaffold":"create-ton-appkit my-app -y --template react --app-url %s"}}' "$APP_URL" > package.json + npm i "./$tname" >/dev/null 2>&1 + case "${{ matrix.pm }}" in + npm) npm run scaffold ;; + pnpm) pnpm run scaffold ;; + yarn) yarn run scaffold ;; + bun) bun run scaffold ;; + esac + + rm -rf node_modules package.json package-lock.json pnpm-lock.yaml yarn.lock bun.lock bun.lockb "$tname" # Sanity-check the generated TonConnect manifest got the requested app URL. manifest="my-app/public/tonconnect-manifest.json" grep -q "\"url\": \"$APP_URL\"" "$manifest"