# pastelsky/bundlephobia

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/pastelsky-bundlephobia).**

9,534 stars · 252 forks · TypeScript · MIT

## Links

- GitHub: https://github.com/pastelsky/bundlephobia
- Homepage: https://bundlephobia.com
- awesome-repositories: https://awesome-repositories.com/repository/pastelsky-bundlephobia.md

## Topics

`cost` `dependencies` `npm-package` `performance` `webpack`

## Description

Bundlephobia is a suite of tools for analyzing the composition and size of JavaScript dependencies from the npm registry. It functions as a bundle analyzer and size monitor that calculates the total footprint of frontend packages and stylesheets to determine their impact on page load performance.

The project identifies specific components contributing to bundle size through asset composition analysis and package auditing. It also generates visual size indicators and badges that can be embedded in documentation and version control repositories to communicate package dimensions.

The platform monitors historical size trends and growth patterns across different versions to identify size regressions. Its analytical capabilities include dependency cost analysis and tree-shaking simulation to estimate the minimal required code for basic functionality.

## Tags

### Development Tools & Productivity

- [Bundle Composition Analyzers](https://awesome-repositories.com/f/development-tools-productivity/bundle-composition-analyzers.md) — Analyzes the internal structure of packages to identify specific components contributing to bundle size.
- [Bundle Size Analyzers](https://awesome-repositories.com/f/development-tools-productivity/bundle-size-analyzers.md) — Evaluates the size impact of adding new libraries to a project to optimize bundle footprint.
- [Bundle Size Optimization](https://awesome-repositories.com/f/development-tools-productivity/bundle-size-optimization.md) — Measures JavaScript package sizes to prevent large dependencies from degrading page load performance.
- [Package Composition Analysis](https://awesome-repositories.com/f/development-tools-productivity/dependency-managers/package-composition-analysis.md) — Analyzes the internal structure of a package to identify which specific components contribute most to the size. ([source](https://github.com/pastelsky/bundlephobia#readme))
- [Package Registry Integrations](https://awesome-repositories.com/f/development-tools-productivity/dependency-managers/package-registry-integrations.md) — Integrates with the public npm registry to fetch metadata and tarball archives for analysis.
- [Package Composition Auditing](https://awesome-repositories.com/f/development-tools-productivity/package-composition-auditing.md) — Breaks down dependencies into internal components to identify the primary contributors to total bundle size.
- [Package Size Version Tracking](https://awesome-repositories.com/f/development-tools-productivity/package-size-version-tracking.md) — Tracks package size changes across semantic versions to identify growth trends and size regressions.

### Programming Languages & Runtimes

- [Archive Size Analysis](https://awesome-repositories.com/f/programming-languages-runtimes/archive-size-analysis.md) — Unpacks compressed package archives to calculate the actual uncompressed code size delivered to users.

### Part of an Awesome List

- [Performance Monitoring](https://awesome-repositories.com/f/awesome-lists/devtools/performance-monitoring.md) — Tracks the growth of frontend packages over time to identify and fix unexpected size regressions.
- [Visual Badges](https://awesome-repositories.com/f/awesome-lists/devtools/visual-badges.md) — Provides visual badges that communicate package dimensions within version control repositories. ([source](https://github.com/pastelsky/bundlephobia/blob/bundlephobia/README.md))

### System Administration & Monitoring

- [Package Size Trend Monitoring](https://awesome-repositories.com/f/system-administration-monitoring/package-size-trend-monitoring.md) — Monitors historical changes in package size to identify growth patterns and unexpected size regressions. ([source](https://github.com/pastelsky/bundlephobia#readme))

### Web Development

- [Badge Generation Libraries](https://awesome-repositories.com/f/web-development/badge-generation-libraries.md) — Generates dynamic SVG images representing package size for embedding in documentation.
- [Tree-Shaking Optimizers](https://awesome-repositories.com/f/web-development/tree-shaking-optimizers.md) — Simulates tree-shaking to estimate the minimal required code for basic functionality.
