cli icon indicating copy to clipboard operation
cli copied to clipboard

feat: bundle-stats plugin poc implementation

Open BioPhoton opened this issue 5 months ago β€’ 2 comments

Bundle Stats Plugin PoC Implementation

Fine-grained bundle size tracking for your builds This plugin enables advanced bundle stats capabilities to avoiding unwanted size increase.


πŸ“ Related Issue

πŸ‘‰ #1015 – Bundle Stats Plugin Architecture Discussion

NOTE:
This PoC PR serves as an initial implementation to validate the proposed architecture and core functionality.
The final implementation will be delivered in smaller, focused PRs to ensure clarity, better review ability, and incremental improvements.

Examples

  • https://github.com/code-pushup/cli/pull/1024#issuecomment-3105307512

Features

Legend:

  • Tested - πŸ§ͺ
  • Documented/Planned - πŸ“–
  • Implemented - πŸ‘©β€πŸ’»

Todos:

  • [ ] use generic type PluginArtefactOptions to models
  • [x] merge plugin and audit level configs. πŸ“– πŸ‘©β€πŸ’» πŸ§ͺ
  • [x] πŸ“Š Stats Unification - πŸ“– πŸ‘©β€πŸ’» πŸ§ͺ
    • [x] esbuild - πŸ“– πŸ‘©β€πŸ’» πŸ§ͺ
    • [ ] webpack - πŸ“–
    • [ ] rsbuild - πŸ“–
    • [ ] vite - πŸ“–
    • [ ] roldown - πŸ“–
  • [x] 🎯 Selection - πŸ“– πŸ‘©β€πŸ’» πŸ§ͺ
    • [x] strategy - πŸ“– πŸ‘©β€πŸ’» πŸ§ͺ
  • [x] πŸ“ Scoring - πŸ“– πŸ‘©β€πŸ’» πŸ§ͺ
    • [x] Total Size - πŸ“– πŸ‘©β€πŸ’» πŸ§ͺ
    • [x] Penalty - πŸ“– πŸ‘©β€πŸ’» πŸ§ͺ
      • [x] Too small - πŸ“– πŸ‘©β€πŸ’» πŸ§ͺ
      • [x] Too big - πŸ“– πŸ‘©β€πŸ’» πŸ§ͺ
      • [x] Blacklisted - πŸ“– πŸ‘©β€πŸ’» πŸ§ͺ
  • [ ] 🧠 Insights Table - πŸ“– πŸ‘©β€πŸ’»
    • [ ] Good strategy for accurate "byte picking" - πŸ“– πŸ‘©β€πŸ’»
    • [ ] Grouping - πŸ“– πŸ‘©β€πŸ’»
    • [ ] Remaining Bytes - πŸ“– πŸ‘©β€πŸ’»
  • [ ] 🌲 Artefact Tree - πŸ“– πŸ‘©β€πŸ’»
    • [ ] Pruning - πŸ“– πŸ‘©β€πŸ’»
    • [ ] Grouping - πŸ“– πŸ‘©β€πŸ’»
    • [ ] Formatting - πŸ“– πŸ‘©β€πŸ’»

βœ… MVP State

The final implementation is delivered in the following PR's:

  • [ ] utils
  • [ ] runner
    • [ ] unify logic
    • [ ] selection
    • [ ] scoring
  • [ ] plugin
  • [ ] docs
  • [ ] e2e
  • [ ] runner optional
    • [ ] artefact tree
    • [ ] insights table

BioPhoton avatar Jul 07 '25 10:07 BioPhoton

Code PushUp

🀨 Code PushUp report has both improvements and regressions – compared current commit 34fcb41c476885ad9a959b81fda70ea7cac2518e with previous commit 7daf2012cfebaefca2c6c9e51472872d38f56040.

πŸ•΅οΈ See full comparison in Code PushUp portal πŸ”

🏷️ Categories

🏷️ Category ⭐ Previous score ⭐ Current score πŸ”„ Score change
Code style 🟒 100 🟑 85 ↓ βˆ’15.3
Type Safety 🟒 100 🟑 89 ↓ βˆ’11.1
Bug prevention 🟒 100 🟑 90 ↓ βˆ’10.2
Documentation πŸ”΄ 23 πŸ”΄ 15 ↓ βˆ’7.6
Code coverage 🟒 90 🟑 87 ↓ βˆ’3.5
Performance πŸ”΄ 31 πŸ”΄ 29 ↓ βˆ’1.6
Updates 🟑 77 🟑 77 ↑ +0.1
Security πŸ”΄ 0 πŸ”΄ 0 –
Accessibility 🟒 92 🟒 92 –
Best Practices 🟒 100 🟒 100 –
SEO 🟑 61 🟑 61 –
Miscellaneous 🟒 100 🟒 100 –
πŸ‘ 1 group improved, πŸ‘Ž 12 groups regressed, πŸ‘ 4 audits improved, πŸ‘Ž 62 audits regressed, 14 audits changed without impacting score

πŸ—ƒοΈ Groups

πŸ”Œ Plugin πŸ—ƒοΈ Group ⭐ Previous score ⭐ Current score πŸ”„ Score change
ESLint No Mutations (functional) 🟒 100 πŸ”΄ 0 ↓ βˆ’100
ESLint No Statements (functional) 🟒 100 πŸ”΄ 0 ↓ βˆ’100
ESLint Stylistic (functional) 🟒 100 πŸ”΄ 0 ↓ βˆ’100
TypeScript Problems 🟒 100 🟑 67 ↓ βˆ’33.3
ESLint Helpful warnings (import) 🟒 100 🟑 75 ↓ βˆ’25
ESLint Style guide (import) 🟒 100 🟑 80 ↓ βˆ’20
ESLint Suggestions 🟒 100 🟑 85 ↓ βˆ’15.3
ESLint Static analysis (import) 🟒 100 🟑 88 ↓ βˆ’12.5
JSDoc coverage Documentation coverage πŸ”΄ 23 πŸ”΄ 15 ↓ βˆ’7.6
ESLint Problems 🟒 100 🟒 93 ↓ βˆ’7.4
Code coverage Code coverage metrics 🟒 90 🟑 87 ↓ βˆ’3.5
Lighthouse Performance πŸ”΄ 31 πŸ”΄ 29 ↓ βˆ’1.6
JS Packages NPM outdated dependencies 🟑 77 🟑 77 ↑ +0.1

8 other groups are unchanged.

πŸ›‘οΈ Audits

πŸ”Œ Plugin πŸ›‘οΈ Audit πŸ“ Previous value πŸ“ Current value πŸ”„ Value change
ESLint Enforce treating data as immutable. 🟩 passed πŸŸ₯ 109 errors ↑ +βˆžβ€‰%
ESLint Disallow imperative loops. 🟩 passed πŸŸ₯ 70 warnings ↑ +βˆžβ€‰%
ESLint Enforce consistent brace style for all control statements 🟩 passed πŸŸ₯ 61 warnings ↑ +βˆžβ€‰%
ESLint Enforce the style of numeric separators by correctly grouping digits. 🟩 passed πŸŸ₯ 56 warnings ↑ +βˆžβ€‰%
ESLint Disallow mutable variables. 🟩 passed πŸŸ₯ 38 warnings ↑ +βˆžβ€‰%
ESLint Disallow unused variables 🟩 passed πŸŸ₯ 24 errors ↑ +βˆžβ€‰%
ESLint Enforce type definitions to consistently use either interface or type 🟩 passed πŸŸ₯ 19 warnings ↑ +βˆžβ€‰%
ESLint Enforce a maximum number of lines of code in a function 🟩 passed πŸŸ₯ 16 warnings ↑ +βˆžβ€‰%
ESLint Disallow non-null assertions using the ! postfix operator 🟩 passed πŸŸ₯ 15 errors ↑ +βˆžβ€‰%
ESLint Enforce a maximum depth that blocks can be nested 🟩 passed πŸŸ₯ 12 warnings ↑ +βˆžβ€‰%
ESLint enforce the style of file extensions in import declarations 🟩 passed πŸŸ₯ 12 errors ↑ +βˆžβ€‰%
ESLint Disallow the use of console 🟩 passed πŸŸ₯ 10 warnings ↑ +βˆžβ€‰%
ESLint Disallow the any type 🟩 passed πŸŸ₯ 7 errors ↑ +βˆžβ€‰%
ESLint Disallow duplicate module imports 🟩 passed πŸŸ₯ 7 warnings ↑ +βˆžβ€‰%
ESLint Forbid repeated import of the same module in multiple places. 🟩 passed πŸŸ₯ 6 warnings ↑ +βˆžβ€‰%
ESLint Require consistently using either T[] or Array<T> for arrays 🟩 passed πŸŸ₯ 6 warnings ↑ +βˆžβ€‰%
ESLint Forbid any invalid exports, i.e. re-export of the same name. 🟩 passed πŸŸ₯ 5 errors ↑ +βˆžβ€‰%
ESLint Collection and array contents should be used 🟩 passed πŸŸ₯ 5 errors ↑ +βˆžβ€‰%
ESLint Checks dependencies in project's package.json for version mismatches 🟩 passed πŸŸ₯ 5 errors ↑ +βˆžβ€‰%
ESLint Collapsible "if" statements should be merged 🟩 passed πŸŸ₯ 4 warnings ↑ +βˆžβ€‰%
ESLint Do not use a for loop that can be replaced with a for-of loop. 🟩 passed πŸŸ₯ 4 warnings ↑ +βˆžβ€‰%
ESLint Disallow if statements as the only statement in if blocks without else. 🟩 passed πŸŸ₯ 4 warnings ↑ +βˆžβ€‰%
ESLint Disallow negated conditions. 🟩 passed πŸŸ₯ 4 warnings ↑ +βˆžβ€‰%
ESLint Disallow useless fallback when spreading in object literals. 🟩 passed πŸŸ₯ 4 warnings ↑ +βˆžβ€‰%
ESLint Require braces around arrow function bodies 🟩 passed πŸŸ₯ 4 warnings ↑ +βˆžβ€‰%
ESLint Enforce a maximum number of lines per file 🟩 passed πŸŸ₯ 4 warnings ↑ +βˆžβ€‰%
ESLint Disallow number literals with zero fractions or dangling dots. 🟩 passed πŸŸ₯ 3 warnings ↑ +βˆžβ€‰%
ESLint Enforce a maximum cyclomatic complexity allowed in a program 🟩 passed πŸŸ₯ 3 warnings ↑ +βˆžβ€‰%
ESLint Require for-in loops to include an if statement 🟩 passed πŸŸ₯ 3 errors ↑ +βˆžβ€‰%
ESLint Enforce using a particular method signature syntax 🟩 passed πŸŸ₯ 3 warnings ↑ +βˆžβ€‰%
ESLint Enforce consistent usage of type assertions 🟩 passed πŸŸ₯ 3 errors ↑ +βˆžβ€‰%
ESLint Prefer property signatures over method signatures. 🟩 passed πŸŸ₯ 3 warnings ↑ +βˆžβ€‰%
ESLint Replaces x => f(x) with just f. 🟩 passed πŸŸ₯ 3 warnings ↑ +βˆžβ€‰%
ESLint disallow conditional expects 🟩 passed πŸŸ₯ 3 warnings ↑ +βˆžβ€‰%
TypeScript Semantic errors 🟩 passed πŸŸ₯ 2 errors ↑ +βˆžβ€‰%
ESLint Require const declarations for variables that are never reassigned after declared 🟩 passed πŸŸ₯ 2 errors ↑ +βˆžβ€‰%
ESLint Enforce explicitly comparing the length or size property of a value. 🟩 passed πŸŸ₯ 2 warnings ↑ +βˆžβ€‰%
ESLint Enforce combining multiple Array#push() into one call. 🟩 passed πŸŸ₯ 2 warnings ↑ +βˆžβ€‰%
ESLint Prefer .at() method for index access and String#charAt(). 🟩 passed πŸŸ₯ 2 warnings ↑ +βˆžβ€‰%
ESLint Enforce throwing TypeError in type checking conditions. 🟩 passed πŸŸ₯ 2 warnings ↑ +βˆžβ€‰%
ESLint Require or disallow method and property shorthand syntax for object literals 🟩 passed πŸŸ₯ 2 warnings ↑ +βˆžβ€‰%
ESLint Require template literals instead of string concatenation 🟩 passed πŸŸ₯ 2 warnings ↑ +βˆžβ€‰%
ESLint Enforce the use of top-level import type qualifier when an import only has specifiers with inline type qualifiers 🟩 passed πŸŸ₯ 2 warnings ↑ +βˆžβ€‰%
ESLint Forbid a module from importing a module with a dependency path back to itself. 🟩 passed πŸŸ₯ 2 errors ↑ +βˆžβ€‰%
ESLint Functions should not have identical implementations 🟩 passed πŸŸ₯ 1 error ↑ +βˆžβ€‰%
ESLint Return of boolean expressions should not be wrapped into an "if-then-else" statement 🟩 passed πŸŸ₯ 1 warning ↑ +βˆžβ€‰%
ESLint Disallow empty files. 🟩 passed πŸŸ₯ 1 warning ↑ +βˆžβ€‰%
ESLint Prefer Array#{indexOf,lastIndexOf}() over Array#{findIndex,findLastIndex}() when looking for the index of an item. 🟩 passed πŸŸ₯ 1 warning ↑ +βˆžβ€‰%
ESLint Disallow reassigning function parameters 🟩 passed πŸŸ₯ 1 error ↑ +βˆžβ€‰%
ESLint Disallow initializing variables to undefined 🟩 passed πŸŸ₯ 1 warning ↑ +βˆžβ€‰%
ESLint Disallow renaming import, export, and destructured assignments to the same name 🟩 passed πŸŸ₯ 1 warning ↑ +βˆžβ€‰%
ESLint Enforce a maximum number of parameters in function definitions 🟩 passed πŸŸ₯ 1 warning ↑ +βˆžβ€‰%
ESLint Disallow variable declarations from shadowing variables declared in the outer scope 🟩 passed πŸŸ₯ 1 warning ↑ +βˆžβ€‰%
ESLint disallow unsupported Node.js built-in APIs on the specified version 🟩 passed πŸŸ₯ 1 error ↑ +βˆžβ€‰%
ESLint Checks dependencies in project's package.json for version mismatches 🟩 passed πŸŸ₯ 1 error ↑ +βˆžβ€‰%
JSDoc coverage Interfaces coverage 🟩 0 undocumented interfaces πŸŸ₯ 18 undocumented interfaces ↑ +βˆžβ€‰%
Lighthouse Avoids enormous network payloads 🟨 Total size was 2,706Β KiB 🟩 Total size was 2,662Β KiB ↓ βˆ’1.6 %
Lighthouse First Contentful Paint πŸŸ₯ 3.2Β s πŸŸ₯ 3.6Β s ↑ +13.1 %
Code coverage Line coverage 🟨 86.8 % 🟨 77 % ↓ βˆ’11.3 %
JSDoc coverage Functions coverage πŸŸ₯ 516 undocumented functions πŸŸ₯ 576 undocumented functions ↑ +11.6 %
Lighthouse Speed Index πŸŸ₯ 8.6Β s πŸŸ₯ 9.3Β s ↑ +7.3 %
Code coverage Function coverage 🟩 93.1 % 🟨 89.2 % ↓ βˆ’4.2 %
JSDoc coverage Variables coverage πŸŸ₯ 224 undocumented variables πŸŸ₯ 239 undocumented variables ↑ +6.7 %
JSDoc coverage Types coverage πŸŸ₯ 235 undocumented types πŸŸ₯ 305 undocumented types ↑ +29.8 %
JS Packages Outdated NPM dev dependencies. 🟨 55 outdated package versions (30 major, 21 minor, 4 patch) 🟨 56 outdated package versions (30 major, 21 minor, 5 patch) ↑ +1.8 %
Code coverage Branch coverage 🟨 85 % 🟨 84.6 % ↓ βˆ’0.5 %
Lighthouse Uses efficient cache policy on static assets 🟨 31 resources found 🟨 31 resources found ↑ +0.1 %
Lighthouse Metrics 🟩 100% 🟩 100% ↑ +4.2 %
Lighthouse Time to Interactive πŸŸ₯ 19.6Β s πŸŸ₯ 20.4Β s ↑ +4.2 %
Lighthouse JavaScript execution time πŸŸ₯ 10.7Β s πŸŸ₯ 10.0Β s ↓ βˆ’6.7 %
Lighthouse Total Blocking Time πŸŸ₯ 6,870Β ms πŸŸ₯ 7,270Β ms ↑ +5.8 %
Lighthouse Largest Contentful Paint πŸŸ₯ 13.4Β s πŸŸ₯ 13.0Β s ↓ βˆ’2.8 %
Lighthouse Minimizes main-thread work πŸŸ₯ 21.5Β s πŸŸ₯ 21.2Β s ↓ βˆ’1.7 %
Lighthouse Server Backend Latencies 🟩 1,570Β ms 🟩 1,220Β ms ↓ βˆ’21.9 %
Lighthouse Max Potential First Input Delay πŸŸ₯ 2,360Β ms πŸŸ₯ 2,220Β ms ↓ βˆ’6 %
Lighthouse Initial server response time was short 🟩 Root document took 520Β ms 🟩 Root document took 460Β ms ↓ βˆ’11.2 %
Lighthouse Network Round Trip Times 🟩 70Β ms 🟩 110Β ms ↑ +59.3 %
Lighthouse Reduce unused CSS πŸŸ₯ Potential savings of 102Β KiB πŸŸ₯ Potential savings of 102Β KiB ↓ βˆ’2.2 %
Lighthouse Reduce unused JavaScript πŸŸ₯ Potential savings of 549Β KiB πŸŸ₯ Potential savings of 549Β KiB ↓ βˆ’1.3 %
Lighthouse Remove duplicate modules in JavaScript bundles πŸŸ₯ Potential savings of 92Β KiB πŸŸ₯ Potential savings of 103Β KiB ↓ βˆ’3.2 %

530 other audits are unchanged.

github-actions[bot] avatar Jul 10 '25 19:07 github-actions[bot]

Code PushUp Report

πŸ›‘οΈ Audits

πŸ”₯ Initial Bundle Size (Bundle Stats)

πŸŸ₯ 1.4 MB (77 files) (score: 0)
Group Modules Size
πŸ…°οΈ @angular 61 550.29 kB
🟣 vanilla 323 310.84 kB
🚫 Theme Park Package 48 185.31 kB
πŸ“¦ lodash-es 364 49.55 kB
🟣 Design System Package 7 49.4 kB
🚫 Blacklist 2 49.15 kB
πŸ“¦ rxjs 166 35.19 kB
πŸ…°οΈ @ngrx 2 19.43 kB
πŸ“¦ @floating-ui 4 18.92 kB
πŸ…°οΈ ngx-toastr 1 18.79 kB
πŸ…°οΈ ngx-float-ui 1 14.83 kB
🟣 loaders-lib 10 14.68 kB
πŸ…°οΈ @ngx-translate 1 10.77 kB
πŸ“¦ @rtms 1 9.44 kB
🟣 payments 14 7.93 kB
🟣 sports 40 6.83 kB
🟣 host-app 11 6.57 kB
πŸ“¦ @push-based 1 5.66 kB
πŸ…°οΈ ngx-lottie 1 4.72 kB
πŸ…°οΈ @rx-angular 3 1.64 kB
🟣 oxygen 3 811 B
🟣 casino 1 129 B
πŸ“ Rest - 57.65 kB

initial-bundle-size

πŸ—‚οΈ initial-bundle-size                                                    1.4 MB  1068  21                        
β”œβ”€β”€ πŸ“„ chunk-XMJGD64P.js                                                                     594.28 kB  706 modules
β”‚   β”œβ”€β”€ 🟣 vanilla                                                                           300.55 kB  312 modules
β”‚   β”œβ”€β”€ πŸ…°οΈ @angular/router                                                                   75.64 kB    3 modules
β”‚   β”œβ”€β”€ πŸ“¦ lodash-es                                                                          49.55 kB  364 modules
β”‚   β”œβ”€β”€ 🟣 Design System Package                                                               49.4 kB    7 modules
β”‚   β”œβ”€β”€ πŸ…°οΈ @angular/common                                                                      22 kB    2 modules
β”‚   β”œβ”€β”€ πŸ“¦ @floating-ui                                                                       18.92 kB    4 modules
β”‚   β”œβ”€β”€ πŸ…°οΈ node_modules/ngx-toastr/fesm2022/ngx-toastr.mjs                                   18.79 kB             
β”‚   β”œβ”€β”€ πŸ…°οΈ @angular/platform-browser                                                         17.32 kB    3 modules
β”‚   β”œβ”€β”€ πŸ…°οΈ node_modules/ngx-float-ui/fesm2022/ngx-float-ui.mjs                               14.83 kB             
β”‚   β”œβ”€β”€ πŸ“¦ node_modules/@rtms/client/fesm2015/rtms-client.js                                   9.44 kB             
β”‚   β”œβ”€β”€ πŸ“¦ node_modules/@push-based/ngx...vg/fesm2022/ngx-fast-svg.mjs                         5.66 kB             
β”‚   β”œβ”€β”€ πŸ…°οΈ node_modules/@angular/animations/fesm2022/animations.mjs                            1.9 kB             
β”‚   β”œβ”€β”€ πŸ…°οΈ @rx-angular/cdk                                                                    1.64 kB    3 modules
β”‚   β”œβ”€β”€ πŸ…°οΈ node_modules/@angular/core/fesm2022/rxjs-interop.mjs                                1.1 kB             
β”‚   β”œβ”€β”€ πŸ…°οΈ node_modules/@angular/cdk/fesm2022/layout.mjs                                      1.03 kB             
β”‚   └── πŸ“„ node_modules/js-levenshtein/index.js                                                  818 B             
β”œβ”€β”€ πŸ“„ chunk-FWSPTPCX.js                                                                     239.75 kB  171 modules
β”‚   β”œβ”€β”€ πŸ…°οΈ @angular/core                                                                     190.5 kB    4 modules
β”‚   β”œβ”€β”€ πŸ“¦ rxjs                                                                               35.19 kB  166 modules
β”‚   └── πŸ“„ node_modules/tslib/tslib.es6.mjs                                                   11.07 kB             
β”œβ”€β”€ πŸ“„ chunk-JCE5E6ZQ.js                                                                     117.05 kB   35 modules
β”‚   β”œβ”€β”€ πŸ…°οΈ @angular/cdk                                                                      98.28 kB   33 modules
β”‚   └── πŸ…°οΈ @angular/material                                                                  17.4 kB    2 modules
β”œβ”€β”€ πŸ“„ chunk-A7WNARMW.js                                                                                  3 modules
β”‚   └── πŸ…°οΈ @angular/animations                                                                65.9 kB    3 modules
β”œβ”€β”€ πŸ“„ chunk-MTPOUXPC.js                                                                                  6 modules
β”‚   └── πŸ…°οΈ @angular/common                                                                   55.67 kB    6 modules
β”œβ”€β”€ πŸ“„ chunk-IGE4HHZ4.js                                                                                  2 modules
β”‚   └── 🚫 Blacklist                                                                          49.15 kB    2 modules
β”œβ”€β”€ πŸ“ main-BDM3RIPG.js                                                                       27.13 kB   56 modules
β”‚   β”œβ”€β”€ 🟣 loaders-lib                                                                        13.46 kB    8 modules
β”‚   β”œβ”€β”€ 🟣 host-app                                                                            6.57 kB   11 modules
β”‚   β”œβ”€β”€ 🟣 sports                                                                              3.79 kB   33 modules
β”‚   β”œβ”€β”€ 🟣 payments                                                                            1.14 kB    2 modules
β”‚   β”œβ”€β”€ 🟣 packages/oxygen/libs/coral/d...l-sports-feature.provider.ts                           287 B             
β”‚   └── 🟣 packages/casino/app/src/lottie-options.provide.ts                                     129 B             
β”œβ”€β”€ πŸ“„ styles-RH2YPOUA.css                                                                                         
β”‚   └── 🚫 packages/themepark/themes/wh...nts/product-menu/styles.scss                        23.47 kB             
β”œβ”€β”€ πŸ“„ chunk-V5NKDI5C.js                                                                                           
β”‚   └── πŸ“„ node_modules/hammerjs/hammer.js                                                    19.97 kB             
β”œβ”€β”€ πŸ“„ chunk-ROQZT5LZ.js                                                                                           
β”‚   └── πŸ…°οΈ node_modules/@ngrx/store/fesm2022/ngrx-store.mjs                                  14.31 kB             
β”œβ”€β”€ πŸ“„ styles-G43FGKUQ.css                                                                                         
β”‚   └── 🚫 packages/themepark/themes/wh...ts/message-panel/styles.scss                        14.03 kB             
β”œβ”€β”€ πŸ“„ styles-Z43PANIN.css                                                                                         
β”‚   └── 🚫 packages/themepark/themes/wh...omponents/footer/styles.scss                        12.33 kB             
β”œβ”€β”€ πŸ“„ chunk-52G5QY5E.js                                                                                           
β”‚   └── πŸ…°οΈ node_modules/@ngx-translate/...m2022/ngx-translate-core.mjs                       10.77 kB             
β”œβ”€β”€ πŸ“„ styles-VHWOE7I3.css                                                                                         
β”‚   └── 🚫 packages/themepark/themes/wh...components/inbox/styles.scss                        10.54 kB             
β”œβ”€β”€ πŸ“„ styles-QWZT5OTV.css                                                                                         
β”‚   └── 🚫 packages/themepark/themes/wh.../rtms/rtms-layer/styles.scss                         9.92 kB             
β”œβ”€β”€ πŸ“„ styles-AXDDHPZ4.css                                                                                         
β”‚   └── 🚫 packages/themepark/themes/wh...ents/date-picker/styles.scss                         9.88 kB             
β”œβ”€β”€ πŸ“„ chunk-RY2Y6BTD.js                                                                                  7 modules
β”‚   └── 🟣 vanilla                                                                             8.81 kB    7 modules
β”œβ”€β”€ πŸ“„ styles-QLHNKCO4.css                                                                                         
β”‚   └── 🚫 packages/themepark/themes/wh...omponents/header/styles.scss                         8.11 kB             
β”œβ”€β”€ πŸ“„ styles-BVMEFQ5G.css                                                                                         
β”‚   └── 🚫 packages/themepark/themes/wh...s/session-limits/styles.scss                         7.67 kB             
β”œβ”€β”€ πŸ“„ chunk-E4YPOLYH.js                                                                                 12 modules
β”‚   └── 🟣 payments                                                                            6.79 kB   12 modules
└── πŸ“ ...                                                                                      118 kB     59 files

Issues

Severity Message Source file Line(s)
🚨 error πŸ”Ί chunk-FWSPTPCX.js is 239.75 kB (> 97.66 kB) chunk-FWSPTPCX.js
🚨 error πŸ”Ί chunk-JCE5E6ZQ.js is 117.05 kB (> 97.66 kB) chunk-JCE5E6ZQ.js
🚨 error πŸ”Ί chunk-XMJGD64P.js is 594.28 kB (> 97.66 kB) chunk-XMJGD64P.js
⚠️ warning πŸ”» styles-E25WI4JT.css is 68 B (< 100 B) styles-E25WI4JT.css

Monitors critical loading performance, enforces size budgets, detects bloat sources, and prevents slow startup times in main application bundles.

βš™οΈ Configuration
  • Scoring:

    • Artefact Size: >100 B & <97.66 kB; weight: 0
    • Total Size: >976.56 kB threshold
  • Issues:

    • Warning: <97.66 kB - Size acceptable but monitor growth
    • Error: >97.66 kB - Exceeds size budget
  • Table:

    • Groups: Detail listing of 🚫Blacklist, 🟣Design System Package, 🚫Theme Park Package, πŸ’³Payments Package, 🎰Casino Package
    • Rest: Other contributing modules
  • Tree:

    • Groups: Same as table
    • Pruning: 20 children, 2 depth
    • Rest: Remaining items grouped for clarity

πŸ—‚οΈ All Files (Bundle Stats)

🟩 109.03 MB (4557 files) (score: 100)
Group Modules Size
πŸ“ Node Modules 1109 30.12 MB
🟣 oxygen 4723 26.97 MB
🟣 myaccount 2275 12.58 MB
🟣 sports 3939 7.63 MB
🟣 payments 807 7.36 MB
🟣 poker 1951 3.48 MB
🟣 casino 712 3.39 MB
🟣 promo 707 2.52 MB
🟣 vanilla 1340 1.83 MB
πŸ…°οΈ Angular 185 1.71 MB
🟣 bingo 208 871.86 kB
🟣 Design System Package 109 869.97 kB
🚫 Blacklist 224 750.22 kB
🟣 rewards-hub 63 236.11 kB
🟣 mokabingo-app 70 211.98 kB
🚫 Theme Park Package 49 185.82 kB
🟣 engagement 46 130.41 kB
🟣 lottery 40 54.01 kB
🟣 horseracing 38 53.71 kB
🟣 global-search 12 19.09 kB
🟣 loaders-lib 10 14.68 kB
🟣 geo-coordinator-lib 8 12.29 kB
🟣 host-app 13 6.79 kB
πŸ“ Rest - 8.1 MB

Analyzes complete bundle composition, identifies architectural patterns, tracks package distribution, and reveals size contributors across all bundle artifacts.

βš™οΈ Configuration
  • Issues:

    • Info: 0 violations - Analysis only, no penalties
  • Table:

    • Groups: Detail listing of 🚫Blacklist, 🟣Design System Package, 🚫Theme Park Package, πŸ…°οΈAngular, πŸ’³Payments Package
    • Rest: Other contributing modules

πŸ…°οΈ Angular Ecosystem (Bundle Stats)

🟩 15.42 MB (501 files) (score: 100)
Group Modules Size
@angular 116 1.27 MB
ngx-daterangepicker-material 1 63.81 kB
ngx-slider-v2 1 60.76 kB
@angular-slider 31 59.41 kB
ngx-scrollbar 2 49.15 kB
ngx-device-detector 1 36.87 kB
@ngrx 6 36.55 kB
🚫 @ng-bootstrap 1 34.16 kB
@rx-angular 15 30.83 kB
sports-animations 3 30.52 kB
@ngu 1 22.04 kB
🚫 ngx-toastr 1 18.79 kB
ng-circle-progress 1 17.16 kB
ngx-popperjs 1 15.28 kB
ngx-float-ui 1 14.83 kB
@ngx-translate 1 10.77 kB
ng-dynamic-component 1 6.04 kB
ng-in-viewport 1 6 kB
ng-lazyload-image 1 5.93 kB
angularx-qrcode 1 4.84 kB
ngx-lottie 1 4.72 kB
πŸ“ Rest - 13.63 MB

angular-ecosystem

πŸ—‚οΈ angular-ecosystem                                                      15.42 MB  5282  26                         
β”œβ”€β”€ πŸ“„ chunk-Y3HMZ5KM.js                                                                         3.31 MB  1326 modules
β”‚   β”œβ”€β”€ πŸ“ Rest                                                                                  3.29 MB  1325 modules
β”‚   └── πŸ…°οΈ node_modules/@angular/material/fesm2022/button-toggle.mjs                           21.55 kB              
β”œβ”€β”€ πŸ“„ chunk-HV7YKUNQ.js                                                                                   362 modules
β”‚   └── πŸ“ Rest                                                                                  1.13 MB   362 modules
β”œβ”€β”€ πŸ“„ chunk-IPC3RBKM.js                                                                       642.32 kB   262 modules
β”‚   β”œβ”€β”€ πŸ“ Rest                                                                                630.02 kB   260 modules
β”‚   β”œβ”€β”€ πŸ…°οΈ node_modules/ng-lazyload-ima...sm2020/ng-lazyload-image.mjs                          5.93 kB              
β”‚   └── πŸ…°οΈ node_modules/@ngrx/signals/fesm2022/ngrx-signals.mjs                                 2.04 kB              
β”œβ”€β”€ πŸ“„ chunk-BF2DWCDG.js                                                                                    54 modules
β”‚   └── πŸ“ Rest                                                                                604.23 kB    54 modules
β”œβ”€β”€ πŸ“ chunk-NVQ5VL4Y.js                                                                       602.77 kB    45 modules
β”‚   β”œβ”€β”€ πŸ“ Rest                                                                                569.55 kB    42 modules
β”‚   └── πŸ…°οΈ node_modules                                                                        30.52 kB     3 modules
β”œβ”€β”€ πŸ“„ chunk-XMJGD64P.js                                                                       594.28 kB   706 modules
β”‚   β”œβ”€β”€ πŸ“ Rest                                                                                434.31 kB   690 modules
β”‚   β”œβ”€β”€ πŸ…°οΈ @angular/router                                                                     75.64 kB     3 modules
β”‚   β”œβ”€β”€ πŸ…°οΈ @angular/common                                                                        22 kB     2 modules
β”‚   β”œβ”€β”€ 🚫 node_modules/ngx-toastr/fesm2022/ngx-toastr.mjs                                      18.79 kB              
β”‚   β”œβ”€β”€ πŸ…°οΈ @angular/platform-browser                                                           17.32 kB     3 modules
β”‚   β”œβ”€β”€ πŸ…°οΈ node_modules/ngx-float-ui/fesm2022/ngx-float-ui.mjs                                 14.83 kB              
β”‚   β”œβ”€β”€ πŸ…°οΈ node_modules/@angular/animations/fesm2022/animations.mjs                              1.9 kB              
β”‚   β”œβ”€β”€ πŸ…°οΈ @rx-angular/cdk                                                                      1.64 kB     3 modules
β”‚   β”œβ”€β”€ πŸ…°οΈ node_modules/@angular/core/fesm2022/rxjs-interop.mjs                                  1.1 kB              
β”‚   └── πŸ…°οΈ node_modules/@angular/cdk/fesm2022/layout.mjs                                        1.03 kB              
β”œβ”€β”€ πŸ“„ chunk-VC6QAOBB.js                                                                                    68 modules
β”‚   └── πŸ“ Rest                                                                                552.27 kB    68 modules
β”œβ”€β”€ πŸ“„ chunk-P7F2V6TK.js                                                                                   105 modules
β”‚   └── πŸ“ Rest                                                                                433.21 kB   105 modules
β”œβ”€β”€ πŸ“ chunk-BT5R6MGD.js                                                                       387.29 kB    43 modules
β”‚   β”œβ”€β”€ πŸ“ Rest                                                                                365.41 kB    42 modules
β”‚   └── πŸ…°οΈ node_modules/@angular/cdk/fesm2022/menu.mjs                                         17.01 kB              
β”œβ”€β”€ πŸ“„ chunk-YPBRAJLT.js                                                                                    99 modules
β”‚   └── πŸ“ Rest                                                                                351.16 kB    99 modules
β”œβ”€β”€ πŸ“„ chunk-SJSSVFWT.js                                                                                              
β”‚   └── πŸ“ node_modules/braintree-web/dist/browser/index.js                                    312.82 kB              
β”œβ”€β”€ πŸ“„ chunk-FWSPTPCX.js                                                                       239.75 kB   171 modules
β”‚   β”œβ”€β”€ πŸ…°οΈ @angular/core                                                                       190.5 kB     4 modules
β”‚   └── πŸ“ Rest                                                                                 46.26 kB   167 modules
β”œβ”€β”€ πŸ“„ chunk-SYYRCYVE.js                                                                                    21 modules
β”‚   └── πŸ“ Rest                                                                                215.01 kB    21 modules
β”œβ”€β”€ πŸ“„ chunk-INBYE6V6.js                                                                                    26 modules
β”‚   └── πŸ“ Rest                                                                                 195.1 kB    26 modules
β”œβ”€β”€ πŸ“„ chunk-DAQ6D6Q5.js                                                                       185.61 kB    28 modules
β”‚   β”œβ”€β”€ πŸ“ Rest                                                                                 180.3 kB    27 modules
β”‚   └── πŸ…°οΈ node_modules/@angular/materi.../material-moment-adapter.mjs                          3.23 kB              
β”œβ”€β”€ πŸ“„ chunk-FTWYFSHV.js                                                                       167.71 kB    62 modules
β”‚   β”œβ”€β”€ πŸ“ Rest                                                                                161.28 kB    61 modules
β”‚   └── πŸ…°οΈ node_modules/@ngrx/component/fesm2022/ngrx-component.mjs                             3.99 kB              
β”œβ”€β”€ πŸ“„ chunk-GILYN2SN.js                                                                                    47 modules
β”‚   └── πŸ“ Rest                                                                                148.67 kB    47 modules
β”œβ”€β”€ πŸ“„ chunk-3UHUUF6G.js                                                                                    32 modules
β”‚   └── πŸ“ Rest                                                                                149.76 kB    32 modules
β”œβ”€β”€ πŸ“„ chunk-D33QGDF3.js                                                                                     9 modules
β”‚   └── πŸ“ Rest                                                                                144.11 kB     9 modules
β”œβ”€β”€ πŸ“„ chunk-44Z4IQ53.js                                                                                    49 modules
β”‚   └── πŸ“ Rest                                                                                136.15 kB    49 modules
β”œβ”€β”€ πŸ“„ chunk-GBQV5BLB.js                                                                       126.92 kB    44 modules
β”‚   β”œβ”€β”€ πŸ“ Rest                                                                                 66.32 kB    13 modules
β”‚   └── πŸ…°οΈ @angular-slider/ngx-slider                                                          59.41 kB    31 modules
β”œβ”€β”€ πŸ“„ chunk-K4GNEKUV.js                                                                       122.54 kB    16 modules
β”‚   β”œβ”€β”€ πŸ…°οΈ node_modules/ngx-daterangepi...daterangepicker-material.mjs                         63.81 kB              
β”‚   └── πŸ“ Rest                                                                                 57.95 kB    15 modules
β”œβ”€β”€ πŸ“ chunk-DWZKI7KU.js                                                                       121.18 kB    19 modules
β”‚   β”œβ”€β”€ πŸ“ Rest                                                                                 59.23 kB    18 modules
β”‚   └── πŸ…°οΈ node_modules/@angular/cdk/fesm2022/drag-drop.mjs                                    52.84 kB              
β”œβ”€β”€ πŸ“„ chunk-JCE5E6ZQ.js                                                                       117.05 kB    35 modules
β”‚   β”œβ”€β”€ πŸ…°οΈ @angular/cdk                                                                        98.28 kB    33 modules
β”‚   └── πŸ…°οΈ @angular/material                                                                    17.4 kB     2 modules
β”œβ”€β”€ πŸ“„ quick-deposit-feature.component-6L65HN7U.css                                            114.15 kB     2 modules
β”‚   β”œβ”€β”€ πŸ…°οΈ node_modules/@angular/materi...built-themes/indigo-pink.css                         86.37 kB              
β”‚   └── πŸ“ packages/payments/quickdepos...posit-feature.component.scss                          27.68 kB              
└── πŸ“ ...                                                                                       4.45 MB    1650 files

Tracks Angular framework usage, optimizes tree-shaking opportunities, identifies duplicate Angular modules, and prevents framework bloat in Angular applications.

βš™οΈ Configuration
  • Issues:

    • Info: 0 violations - Analysis only, no penalties
  • Table:

    • Groups: Configured groups
    • Rest: Other contributing modules
  • Tree:

    • Groups: Same as table
    • Pruning: 25 children, 2 depth
    • Rest: Remaining items grouped for clarity

🚫 Blacklisted (Bundle Stats)

🟩 9.32 MB (132 files) (score: 100)
Group Modules Size
βœ… Not Blacklisted 3332 8.59 MB
🚫 Blacklist 224 750.22 kB

Issues

Severity Message Source file Line(s)
🚨 error 🚫 node_modules/lodash/lodash.js matches blacklist pattern **/node_modules/lodash/** - Replace with lodash-es and use selective imports like import isEmpty from "lodash-es/isEmpty". chunk-47D45RXC.js
🚨 error 🚫 Blacklisted modules matching **/node_modules/socket.io-client/** included in file - Use lazy loading for heavy dependencies. chunk-5V2PPPNH.js
🚨 error 🚫 node_modules/ngx-device-detector/fesm2022/ngx-device-detector.mjs matches blacklist pattern **/node_modules/ngx-device-detector/** - Use lazy loading for heavy dependencies. chunk-AJ2NKFMZ.js
🚨 error 🚫 node_modules/ua-parser-js/src/ua-parser.js matches blacklist pattern **/node_modules/ua-parser-js/** - Use lazy loading for heavy dependencies. chunk-FLWXSBRD.js
🚨 error 🚫 Blacklisted modules matching **/node_modules/ngx-scrollbar/** included in file - Use lazy loading for heavy dependencies. chunk-IGE4HHZ4.js
🚨 error 🚫 node_modules/lottie-web/build/player/lottie.js matches blacklist pattern **/node_modules/lottie-web/** - Use lazy loading for heavy dependencies. chunk-SXUKVV42.js
🚨 error 🚫 node_modules/launchdarkly-js-client-sdk/dist/ldclient.es.js matches blacklist pattern **/node_modules/launchdarkly-js-client-sdk/** - Use lazy loading for heavy dependencies. chunk-U6V7KC5B.js
🚨 error 🚫 Blacklisted modules matching **/node_modules/@microsoft/** included in file - Use lazy loading for heavy dependencies. chunk-WWRMO4DV.js
🚨 error 🚫 node_modules/howler/dist/howler.js matches blacklist pattern **/node_modules/howler/** - Use lazy loading for heavy dependencies. chunk-Y3HMZ5KM.js

Detects blacklisted dependencies, enforces architectural standards, prevents security vulnerabilities, and blocks performance bottlenecks from reaching production.

βš™οΈ Configuration
  • Scoring:

    • Blacklist: 10 matches; weight: 0
  • Issues:

    • Error: 1+ candidates - Violation detected, requires action
    • Info: 0 candidates - No violations found
  • Table:

    • Groups: Detail listing of 🚫Blacklist, βœ…Not Blacklisted
    • Rest: Other contributing modules

πŸ“¦ Node Modules (Bundle Stats)

🟩 6.69 MB (300 files) (score: 100)
Group Modules Size
πŸ“¦ Packages 664 1.33 MB
πŸ“¦πŸš« Legacy Packages 29 186.75 kB
πŸ†• moment 1 59.42 kB
πŸ†• js-sha512 1 18.8 kB
πŸ†•πŸš« underscore 1 17.42 kB
πŸ†• immer 1 7.95 kB
πŸ†• resize-observer-polyfill 1 7.51 kB
πŸ†• fastdom 1 1.46 kB
πŸ†• js-levenshtein 1 818 B
πŸ†• xhr2 1 43 B
πŸ“ Rest - 5.06 MB

node-modules

πŸ—‚οΈ node-modules                                               6.69 MB  3161  11                         
β”œβ”€β”€ πŸ“ chunk-2DMRTCLA.js                                                            2.87 MB  1246 modules
β”‚   β”œβ”€β”€ πŸ“ Rest                                                                     2.83 MB  1245 modules
β”‚   └── πŸ†• node_modules/js-sha512/src/sha512.js                                     18.8 kB              
β”œβ”€β”€ πŸ“„ chunk-XMJGD64P.js                                                          594.28 kB   706 modules
β”‚   β”œβ”€β”€ πŸ“ Rest                                                                   349.94 kB   319 modules
β”‚   β”œβ”€β”€ πŸ“¦ Packages                                                               237.82 kB   386 modules
β”‚   └── πŸ†• node_modules/js-levenshtein/index.js                                       818 B              
β”œβ”€β”€ πŸ“„ chunk-YPBRAJLT.js                                                                       99 modules
β”‚   └── πŸ“ Rest                                                                   351.16 kB    99 modules
β”œβ”€β”€ πŸ“„ chunk-SJSSVFWT.js                                                                                 
β”‚   └── πŸ“¦ node_modules/braintree-web/dist/browser/index.js                       312.82 kB              
β”œβ”€β”€ πŸ“„ chunk-FWSPTPCX.js                                                                      171 modules
β”‚   └── πŸ“¦ Packages                                                               236.75 kB   171 modules
β”œβ”€β”€ πŸ“„ chunk-JCE5E6ZQ.js                                                                       35 modules
β”‚   └── πŸ“¦ Packages                                                               115.69 kB    35 modules
β”œβ”€β”€ πŸ“„ chunk-KGOP3CSX.js                                                                       45 modules
β”‚   └── πŸ“ Rest                                                                    84.25 kB    45 modules
β”œβ”€β”€ πŸ“„ chunk-A7WNARMW.js                                                                        3 modules
β”‚   └── πŸ“¦ Packages                                                                 65.9 kB     3 modules
β”œβ”€β”€ πŸ“„ chunk-WWRMO4DV.js                                                           66.19 kB    36 modules
β”‚   β”œβ”€β”€ πŸ“¦πŸš« Legacy Packages                                                       49.95 kB    25 modules
β”‚   β”œβ”€β”€ πŸ“¦ Packages                                                                 8.72 kB     7 modules
β”‚   └── πŸ“ Rest                                                                     6.85 kB     4 modules
β”œβ”€β”€ πŸ“„ chunk-MSOM6LHI.js                                                                                 
β”‚   └── πŸ†• node_modules/moment/moment.js                                           59.42 kB              
└── πŸ“ ...                                                                          1.96 MB     818 files

Detects newly added packages, catches forbidden dependencies, monitors 3rd party costs, and prevents bundle bloat from unreviewed dependencies.

βš™οΈ Configuration
  • Issues:

    • Info: 0 violations - Analysis only, no penalties
  • Table:

    • Groups: Detail listing of πŸ“¦πŸš«Legacy Packages, πŸ“¦Packages
    • Rest: Other contributing modules
  • Tree:

    • Groups: Same as table
    • Pruning: 10 children, 2 depth
    • Rest: Remaining items grouped for clarity

About

Report was created by Code PushUp on Fri, Jul 25, 2025, 4:22 AM GMT+2.

Plugin Audits Version Duration
Bundle Stats 5 0.69.2 38.59 s
Commit Version Duration Plugins Categories Audits
docs: add examples (b3d0961dc489753ef1f5edbcced33a9127387dea) 0.69.5 38.64 s 1 0 5

Made with ❀ by Code PushUp

BioPhoton avatar Jul 23 '25 01:07 BioPhoton

View your CI Pipeline Execution β†— for commit e72dfacb3162b59e1fb2dd996034fe04768e539d

Command Status Duration Result
nx run ci:code-pushup -- merge-diffs --files=/h... βœ… Succeeded 5s View β†—
nx run-many --targets=code-pushup --parallel=fa... βœ… Succeeded 1m 26s View β†—
nx run-many --targets=code-pushup --parallel=fa... βœ… Succeeded 12m 40s View β†—
nx run-many -t unit-test,int-test βœ… Succeeded 49s View β†—

☁️ Nx Cloud last updated this comment at 2025-12-05 13:58:30 UTC

nx-cloud[bot] avatar Dec 03 '25 00:12 nx-cloud[bot]

Dependency Review Summary

The full dependency review summary is too large to display here. Please download the artifact named "dependency-review-summary" to view the complete report.

View full job summary

github-actions[bot] avatar Dec 03 '25 00:12 github-actions[bot]

Open in StackBlitz

@code-pushup/ci

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/ci@1024
@code-pushup/cli

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/cli@1024
@code-pushup/core

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/core@1024
@code-pushup/create-cli

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/create-cli@1024
@code-pushup/models

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/models@1024
@code-pushup/nx-plugin

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/nx-plugin@1024
@code-pushup/axe-plugin

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/axe-plugin@1024
@code-pushup/bundle-stats-plugin

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/bundle-stats-plugin@1024
@code-pushup/coverage-plugin

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/coverage-plugin@1024
@code-pushup/eslint-plugin

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/eslint-plugin@1024
@code-pushup/js-packages-plugin

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/js-packages-plugin@1024
@code-pushup/jsdocs-plugin

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/jsdocs-plugin@1024
@code-pushup/lighthouse-plugin

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/lighthouse-plugin@1024
@code-pushup/typescript-plugin

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/typescript-plugin@1024
@code-pushup/utils

npm i https://pkg.pr.new/code-pushup/cli/@code-pushup/utils@1024

commit: e72dfac

pkg-pr-new[bot] avatar Dec 05 '25 13:12 pkg-pr-new[bot]

Code PushUp

😟 Code PushUp report has regressed – compared current commit ce663db83f695457a8b5841e078b6aea2bd798e4 with previous commit f74d2dd5baec17a16c3748316438a9dade24dedd.

πŸ’Ό Project utils

😟 Code PushUp report has regressed.

πŸ•΅οΈ See full comparison in Code PushUp portal πŸ”

🏷️ Category ⭐ Previous score ⭐ Current score πŸ”„ Score change
Code coverage 🟒 94 🟒 94 ↓ βˆ’0.5
Documentation πŸ”΄ 38 πŸ”΄ 38 ↓ βˆ’0.1

4 other categories are unchanged.

πŸ‘Ž 2 groups regressed, πŸ‘Ž 3 audits regressed

πŸ—ƒοΈ Groups

πŸ”Œ Plugin πŸ—ƒοΈ Group ⭐ Previous score ⭐ Current score πŸ”„ Score change
Code coverage Code coverage metrics 🟒 94 🟒 94 ↓ βˆ’0.5
JSDoc coverage Documentation coverage πŸ”΄ 38 πŸ”΄ 38 ↓ βˆ’0.1

13 other groups are unchanged.

πŸ›‘οΈ Audits

πŸ”Œ Plugin πŸ›‘οΈ Audit πŸ“ Previous value πŸ“ Current value πŸ”„ Value change
Code coverage Function coverage 🟩 95.3 % 🟩 94.4 % ↓ βˆ’0.9 %
Code coverage Line coverage 🟩 97 % 🟩 96.8 % ↓ βˆ’0.1 %
JSDoc coverage Functions coverage πŸŸ₯ 236 undocumented functions πŸŸ₯ 239 undocumented functions ↑ +1.3 %

440 other audits are unchanged.


13 other projects are unchanged.

github-actions[bot] avatar Dec 05 '25 13:12 github-actions[bot]

Code PushUp

🀨 Code PushUp report has both improvements and regressions – compared current commit ce663db83f695457a8b5841e078b6aea2bd798e4 with previous commit f74d2dd5baec17a16c3748316438a9dade24dedd.

πŸ•΅οΈ See full comparison in Code PushUp portal πŸ”

🏷️ Categories

🏷️ Category ⭐ Previous score ⭐ Current score πŸ”„ Score change
Code style 🟒 100 🟒 93 ↓ βˆ’7.5
Code coverage 🟑 89 🟑 86 ↓ βˆ’2.9
Performance πŸ”΄ 44 πŸ”΄ 42 ↓ βˆ’1.9
Bug prevention 🟑 67 🟑 65 ↓ βˆ’1.2
Documentation πŸ”΄ 35 πŸ”΄ 36 ↑ +0.9
Updates 🟑 71 🟑 71 ↑ +0.1
Security πŸ”΄ 43 πŸ”΄ 43 –
Type Safety 🟑 56 🟑 56 –
Miscellaneous 🟑 67 🟑 67 –
Accessibility 🟒 92 🟒 92 –
Best Practices 🟒 100 🟒 100 –
SEO 🟒 92 🟒 92 –
πŸ‘ 2 groups improved, πŸ‘Ž 9 groups regressed, πŸ‘ 5 audits improved, πŸ‘Ž 35 audits regressed, 14 audits changed without impacting score

πŸ—ƒοΈ Groups

πŸ”Œ Plugin πŸ—ƒοΈ Group ⭐ Previous score ⭐ Current score πŸ”„ Score change
ESLint No Mutations (functional) 🟒 100 πŸ”΄ 0 ↓ βˆ’100
ESLint No Statements (functional) 🟒 100 πŸ”΄ 0 ↓ βˆ’100
ESLint Stylistic (functional) 🟒 100 🟑 50 ↓ βˆ’50
ESLint Helpful warnings (import) 🟒 100 🟑 75 ↓ βˆ’25
ESLint Static analysis (import) 🟒 100 🟑 88 ↓ βˆ’12.5
ESLint Suggestions 🟒 100 🟒 93 ↓ βˆ’7.5
ESLint Problems 🟒 100 🟒 95 ↓ βˆ’4.7
Code coverage Code coverage metrics 🟑 89 🟑 86 ↓ βˆ’2.9
Lighthouse Performance πŸ”΄ 44 πŸ”΄ 42 ↓ βˆ’1.9
JSDoc coverage Documentation coverage πŸ”΄ 35 πŸ”΄ 36 ↑ +0.9
JS Packages NPM outdated dependencies 🟑 71 🟑 71 ↑ +0.1

12 other groups are unchanged.

πŸ›‘οΈ Audits

πŸ”Œ Plugin πŸ›‘οΈ Audit πŸ“ Previous value πŸ“ Current value πŸ”„ Value change
Lighthouse Initial server response time was short πŸŸ₯ Root document took 790Β ms 🟩 Root document took 560Β ms ↓ βˆ’29.5 %
ESLint Enforce treating data as immutable. 🟩 passed πŸŸ₯ 116 errors ↑ +βˆžβ€‰%
ESLint Disallow imperative loops. 🟩 passed πŸŸ₯ 81 warnings ↑ +βˆžβ€‰%
ESLint Disallow mutable variables. 🟩 passed πŸŸ₯ 32 warnings ↑ +βˆžβ€‰%
ESLint Disallow unused variables 🟩 passed πŸŸ₯ 24 errors ↑ +βˆžβ€‰%
ESLint Disallow non-null assertions using the ! postfix operator 🟩 passed πŸŸ₯ 18 errors ↑ +βˆžβ€‰%
ESLint Enforce a maximum number of lines of code in a function 🟩 passed πŸŸ₯ 17 warnings ↑ +βˆžβ€‰%
ESLint Disallow the use of console 🟩 passed πŸŸ₯ 14 warnings ↑ +βˆžβ€‰%
ESLint Enforce a maximum depth that blocks can be nested 🟩 passed πŸŸ₯ 10 warnings ↑ +βˆžβ€‰%
ESLint Disallow the any type 🟩 passed πŸŸ₯ 9 errors ↑ +βˆžβ€‰%
ESLint Forbid any invalid exports, i.e. re-export of the same name. 🟩 passed πŸŸ₯ 7 errors ↑ +βˆžβ€‰%
ESLint Collection and array contents should be used 🟩 passed πŸŸ₯ 5 errors ↑ +βˆžβ€‰%
ESLint Enforce a maximum number of lines per file 🟩 passed πŸŸ₯ 5 warnings ↑ +βˆžβ€‰%
ESLint Enforce a maximum cyclomatic complexity allowed in a program 🟩 passed πŸŸ₯ 4 warnings ↑ +βˆžβ€‰%
ESLint Disallow duplicate module imports 🟩 passed πŸŸ₯ 4 warnings ↑ +βˆžβ€‰%
ESLint Require for-in loops to include an if statement 🟩 passed πŸŸ₯ 3 errors ↑ +βˆžβ€‰%
ESLint Enforce consistent usage of type assertions 🟩 passed πŸŸ₯ 3 errors ↑ +βˆžβ€‰%
ESLint Replaces x => f(x) with just f. 🟩 passed πŸŸ₯ 3 warnings ↑ +βˆžβ€‰%
ESLint disallow conditional expects 🟩 passed πŸŸ₯ 3 warnings ↑ +βˆžβ€‰%
ESLint disallow disabled tests 🟩 passed πŸŸ₯ 3 warnings ↑ +βˆžβ€‰%
ESLint Forbid a module from importing a module with a dependency path back to itself. 🟩 passed πŸŸ₯ 2 errors ↑ +βˆžβ€‰%
ESLint String literals should not be duplicated 🟩 passed πŸŸ₯ 1 warning ↑ +βˆžβ€‰%
ESLint Functions should not have identical implementations 🟩 passed πŸŸ₯ 1 error ↑ +βˆžβ€‰%
ESLint Return of boolean expressions should not be wrapped into an "if-then-else" statement 🟩 passed πŸŸ₯ 1 warning ↑ +βˆžβ€‰%
ESLint Enforce combining multiple Array#push() into one call. 🟩 passed πŸŸ₯ 1 warning ↑ +βˆžβ€‰%
ESLint Disallow reassigning function parameters 🟩 passed πŸŸ₯ 1 error ↑ +βˆžβ€‰%
ESLint Enforce a maximum number of parameters in function definitions 🟩 passed πŸŸ₯ 1 warning ↑ +βˆžβ€‰%
ESLint Disallow variable declarations from shadowing variables declared in the outer scope 🟩 passed πŸŸ₯ 1 warning ↑ +βˆžβ€‰%
ESLint Checks dependencies in project's package.json for version mismatches 🟩 passed πŸŸ₯ 1 error ↑ +βˆžβ€‰%
Code coverage Line coverage 🟨 84.7 % 🟨 76.6 % ↓ βˆ’9.5 %
Lighthouse Speed Index πŸŸ₯ 6.7Β s πŸŸ₯ 7.1Β s ↑ +6.5 %
JSDoc coverage Functions coverage πŸŸ₯ 561 undocumented functions πŸŸ₯ 622 undocumented functions ↑ +10.9 %
Lighthouse Total Blocking Time πŸŸ₯ 800Β ms πŸŸ₯ 880Β ms ↑ +9.7 %
Code coverage Function coverage 🟩 90.3 % 🟨 87.2 % ↓ βˆ’3.4 %
Lighthouse Time to Interactive πŸŸ₯ 13.0Β s πŸŸ₯ 12.5Β s ↓ βˆ’4.1 %
JSDoc coverage Variables coverage πŸŸ₯ 246 undocumented variables πŸŸ₯ 259 undocumented variables ↑ +5.3 %
JSDoc coverage Types coverage πŸŸ₯ 241 undocumented types πŸŸ₯ 333 undocumented types ↑ +38.2 %
Lighthouse First Contentful Paint πŸŸ₯ 3.2Β s πŸŸ₯ 3.3Β s ↑ +0.8 %
Code coverage Branch coverage 🟨 87.3 % 🟨 86.4 % ↓ βˆ’1 %
JS Packages Outdated NPM dev dependencies. 🟨 59 outdated package versions (34 major, 19 minor, 6 patch) 🟨 59 outdated package versions (34 major, 19 minor, 6 patch)  +0 %
Lighthouse Avoids enormous network payloads 🟩 Total size was 2,032Β KiB 🟩 Total size was 2,023Β KiB ↓ βˆ’0.4 %
Lighthouse Server Backend Latencies 🟩 1,760Β ms 🟩 1,230Β ms ↓ βˆ’30.3 %
Lighthouse Metrics 🟩 100% 🟩 100% ↓ βˆ’4.1 %
Lighthouse Minimizes main-thread work πŸŸ₯ 7.5Β s πŸŸ₯ 7.2Β s ↓ βˆ’5 %
Lighthouse Uses efficient cache policy on static assets 🟨 32 resources found 🟨 32 resources found ↓ βˆ’0.1 %
Lighthouse Max Potential First Input Delay πŸŸ₯ 840Β ms πŸŸ₯ 1,060Β ms ↑ +25.6 %
Lighthouse JavaScript execution time πŸŸ₯ 2.9Β s πŸŸ₯ 2.9Β s ↓ βˆ’3.1 %
Lighthouse Reduce unused JavaScript πŸŸ₯ Potential savings of 186Β KiB πŸŸ₯ Potential savings of 186Β KiB ↑ +9.6 %
Lighthouse Largest Contentful Paint πŸŸ₯ 11.6Β s πŸŸ₯ 11.5Β s ↓ βˆ’0.6 %
Lighthouse Reduce unused CSS πŸŸ₯ Potential savings of 105Β KiB πŸŸ₯ Potential savings of 105Β KiB ↓ βˆ’10.4 %
Lighthouse Remove duplicate modules in JavaScript bundles πŸŸ₯ Potential savings of 104Β KiB πŸŸ₯ Potential savings of 104Β KiB ↓ βˆ’10 %
TypeScript Syntax errors πŸŸ₯ 5 errors πŸŸ₯ 9 errors ↑ +80 %
TypeScript Semantic errors πŸŸ₯ 2623 errors πŸŸ₯ 2627 errors ↑ +0.2 %
Lighthouse Network Round Trip Times 🟩 50Β ms 🟩 50Β ms ↓ βˆ’8.1 %

624 other audits are unchanged.

github-actions[bot] avatar Dec 05 '25 13:12 github-actions[bot]

closed as the code now lives in the community plugins repo

BioPhoton avatar Dec 10 '25 18:12 BioPhoton