From 207cb8d79960c27a190edf81b5fd0e3a3330b4dd Mon Sep 17 00:00:00 2001 From: Alexander Karan Date: Thu, 15 Jan 2026 18:26:32 +0800 Subject: [PATCH] Added SvelteKit to the Stats Script --- .github/workflows/generate-stats.yml | 59 ++++++++++++++++++- .../src/content/stats/starter-sveltekit.json | 12 ++++ 2 files changed, 70 insertions(+), 1 deletion(-) create mode 100644 packages/docs/src/content/stats/starter-sveltekit.json diff --git a/.github/workflows/generate-stats.yml b/.github/workflows/generate-stats.yml index 8de592d..552eeab 100644 --- a/.github/workflows/generate-stats.yml +++ b/.github/workflows/generate-stats.yml @@ -123,10 +123,38 @@ jobs: echo "time=$ELAPSED" >> $GITHUB_OUTPUT echo "Nuxt install time: ${ELAPSED}ms" + sveltekit-install: + runs-on: ubuntu-latest + outputs: + time: ${{ steps.measure.outputs.time }} + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Setup pnpm + uses: pnpm/action-setup@v4 + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: '24' + + - name: Measure SvelteKit install time + id: measure + run: | + cp -r packages/starter-sveltekit /tmp/sveltekit-test + cd /tmp/sveltekit-test + START=$(date +%s%N) + pnpm install + END=$(date +%s%N) + ELAPSED=$((($END - $START) / 1000000)) + echo "time=$ELAPSED" >> $GITHUB_OUTPUT + echo "SvelteKit install time: ${ELAPSED}ms" + # Main job that measures builds and generates stats generate-stats: runs-on: ubuntu-latest - needs: [next-install, react-router-install, tanstack-install, nuxt-install] + needs: [next-install, react-router-install, tanstack-install, nuxt-install, sveltekit-install] permissions: contents: write @@ -223,6 +251,25 @@ jobs: echo "warm=$WARM" >> $GITHUB_OUTPUT echo "Nuxt - Cold: ${COLD}ms, Warm: ${WARM}ms" + - name: Measure SvelteKit builds + id: sveltekit + run: | + # Cold build + START=$(date +%s%N) + pnpm build:sveltekit + END=$(date +%s%N) + COLD=$((($END - $START) / 1000000)) + + # Warm build + START=$(date +%s%N) + pnpm build:sveltekit + END=$(date +%s%N) + WARM=$((($END - $START) / 1000000)) + + echo "cold=$COLD" >> $GITHUB_OUTPUT + echo "warm=$WARM" >> $GITHUB_OUTPUT + echo "SvelteKit - Cold: ${COLD}ms, Warm: ${WARM}ms" + - name: Save all CI stats run: | TIMESTAMP=$(date -u +%Y-%m-%dT%H:%M:%SZ) @@ -267,6 +314,16 @@ jobs: "runner": "ubuntu-latest" }' > packages/starter-nuxt/.ci-stats.json + # Save SvelteKit stats + mkdir -p packages/starter-sveltekit + echo '{ + "installTimeMs": ${{ needs.sveltekit-install.outputs.time }}, + "coldBuildTimeMs": ${{ steps.sveltekit.outputs.cold }}, + "warmBuildTimeMs": ${{ steps.sveltekit.outputs.warm }}, + "timingMeasuredAt": "'$TIMESTAMP'", + "runner": "ubuntu-latest" + }' > packages/starter-sveltekit/.ci-stats.json + - name: Generate stats run: pnpm generate:stats diff --git a/packages/docs/src/content/stats/starter-sveltekit.json b/packages/docs/src/content/stats/starter-sveltekit.json new file mode 100644 index 0000000..4e23470 --- /dev/null +++ b/packages/docs/src/content/stats/starter-sveltekit.json @@ -0,0 +1,12 @@ +{ + "name": "SvelteKit", + "type": "starter-kit", + "prodDependencies": 0, + "devDependencies": 7, + "npmGraphUrl": "https://npmgraph.js.org/?q=https://github.com/e18e/framework-tracker/blob/main/packages/starter-sveltekit/package.json", + "installTimeMs": 0, + "coldBuildTimeMs": 0, + "warmBuildTimeMs": 0, + "timingMeasuredAt": "2026-01-15T00:00:00Z", + "runner": "ubuntu-latest" +}