Bundle Size Enforcer
Monitor and enforce LibrAgent's frontend bundle size budget.
Budget Configuration
Bundle size budgets are defined in bundle-size-budget.json and checked by scripts/check-bundle-size.ts.
Verification
# Build and check bundle size
pnpm build && pnpm perf:bundle
CI runs this command and fails on budget overruns.
Audit Checklist
- Production build completes without errors
-
perf:bundlepasses all budget checks - No new large dependencies added without budget review
- Dynamic imports used for code splitting where appropriate
- Tree shaking is effective (no unused exports from dependencies)
Common Bundle Bloat Patterns
- Large dependencies: Check for accidental inclusion of test/build-only packages
- Unused code: Run
pnpm dead-codeto find unused exports - Duplicate code: Check for duplicated utility functions
- Large assets: Images, fonts, and other assets should be optimized
- Unused styles: Tailwind PurgeCSS may remove custom classes - use safelist if needed
Pre-commit Check
Run before committing frontend changes:
pnpm build && pnpm perf:bundle
If budget is exceeded:
- Identify the new/changed dependency or code
- Consider dynamic imports or lazy loading
- Update
bundle-size-budget.jsononly if the increase is justified