bazelbuild / rules_nodejs
Components & Dependencies

An overview of source code logical components.

Intro

Logical decomposition is a representation of the organization of the main source code, where every and each file is put in exactly one logical component.

  • A software system can have one or more logical decompositions.
  • A logical decomposition can be defined in two ways in Sokrates.
  • First approach is based on the folders structure. Components are mapped to folders at defined folder depth relative to the source code root.
  • Second approach is based on explicit definition of each component. In such explicit definitions, components are explicitly named and their files are selected based on explicitly defined path and content filters.
  • A logical decomposition is considered invalid if a file is selected into two or more components.This constraint is introduced in order to facilitate measuring of dependencies among components.
  • Files not assigned to any component are put into a special "Unclassified" component.
Learn more...
Logical Decompositions Overview

Analyzed system has 1 logical decomposition:

  • primary (37 components)

Logical Decomposition #1: PRIMARY

The decompositions is based on the folder structure (relative to the source code root), with automatically defined folder depth to have at least 10 components.

Bubble Chart | Tree Map
Components
The "primary" logical decomposition has 37 components.
  • 222 files, 24,817 lines of code (56.1% vs. main code).
  • "packages/concatjs" is biggest, containing 23.35% of code.
  • "tools/npm_packages" is smallest, containing 0.08% of code.


packages/concatjs5795 LOC (13%) 58 files
internal/npm_install2951 LOC (6%) 6 files
nodejs/private2444 LOC (5%) 14 files
internal/node1730 LOC (3%) 6 files
packages/typescript1541 LOC (3%) 11 files
internal/linker1345 LOC (3%) 4 files
ROOT896 LOC (2%) 7 files
packages/esbuild784 LOC (1%) 6 files
nodejs771 LOC (1%) 7 files
internal/common751 LOC (1%) 12 files
packages/rollup601 LOC (1%) 4 files
internal/pkg_npm504 LOC (1%) 3 files
packages/node-patches468 LOC (1%) 5 files
packages/worker437 LOC (<1%) 5 files
packages/terser418 LOC (<1%) 3 files
internal/js_library376 LOC (<1%) 1 files
scripts349 LOC (<1%) 6 files
internal/providers291 LOC (<1%) 3 files
internal/pkg_web279 LOC (<1%) 10 files
packages/create270 LOC (<1%) 2 files
toolchains/cypress194 LOC (<1%) 2 files
toolchains/esbuild188 LOC (<1%) 3 files
packages/jasmine187 LOC (<1%) 4 files
internal/npm_tarballs181 LOC (<1%) 2 files
internal/runfiles168 LOC (<1%) 3 files
internal/coverage147 LOC (<1%) 2 files
packages/cypress142 LOC (<1%) 4 files
packages/protractor138 LOC (<1%) 3 files
packages/runfiles133 LOC (<1%) 3 files
tools100 LOC (<1%) 2 files
internal/generated_file_test71 LOC (<1%) 2 files
internal/copy_repository34 LOC (<1%) 1 files
toolchains30 LOC (<1%) 1 files
internal29 LOC (<1%) 2 files
tools/stardoc27 LOC (<1%) 2 files
packages26 LOC (<1%) 1 files
tools/npm_packages21 LOC (<1%) 12 files
Dependencies
Dependencies among components are static code dependencies among files in different components.

No component dependencies found.



2022-02-03 05:31