Releases: q1sh101/build-size-diff
Releases · q1sh101/build-size-diff
Release list
v1.2.0
Added
- Workflow-run baseline lookup for faster, reliable detection
- Fallback to repo search when workflow lookup fails
v1.1.0
Added
max-artifact-pagesinput to cap artifact search depth and avoid slow scans in repos with many artifacts
v1.0.1
Added
skip-installoption to skip dependency installation for prebuilt bundles
v1.0.0 - Initial Release
Automated Bundle Size Monitoring
Track bundle size changes in CI/CD pipelines. Catch performance regressions before merging with instant PR comments showing gzip/brotli metrics.
Real PR comment showing:
- Total bundle size (gzip/brotli)
- Per-file changes with clear +/- markers and arrows (🔴 ↑ / 🟢 ↓)
- Budget status (✅ /
⚠️ / ❌) - Top file changes ranked by impact (⬆️ largest first)
Features
- PR-native feedback - Size diff comments appear automatically in every PR
- Multi-compression metrics - Compare raw, gzip, and brotli sizes in one table
- Budget enforcement - Set limits and fail builds that exceed thresholds
- Zero-config setup - Auto-detects output folders for any bundler (Vite, Webpack, Next.js, Nuxt, Astro, SvelteKit, and more)
- Privacy-first - Uses GitHub Artifacts only - no external services or data sharing
- Framework-agnostic - Scans JS/CSS output from any build tool
Quick Start
- uses: q1sh101/build-size-diff@v1
with:
github-token: ${{ secrets.GITHUB_TOKEN }}Push to your default branch to create a baseline. Open a PR to see the size diff.
Common Use Cases
Budget Enforcement:
- uses: q1sh101/build-size-diff@v1
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
budget-max-increase-kb: 50
fail-above-kb: 25Monorepo:
- uses: q1sh101/build-size-diff@v1
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
dist-path: 'apps/web/dist'
build-command: 'npm run build --workspace=web'Troubleshooting
"No baseline found" → Push to your default branch first to create baseline
"Auto-detection failed" → Set dist-path explicitly (e.g., dist-path: 'build')
Full documentation · All configuration options
Technical Details
- TypeScript with strict mode
- Bundler-agnostic (scans JS/CSS output)
- Parallel compression for faster scans
- Security: path traversal + zip bomb protection
- MIT licensed
Built for developers who care about performance.
Built by Giorgi Kishmareia · Theatom.me
