guardian / grid
Source Code Overview

Analysis scope, overview of main, test, generated, deployment, build, and other code.

Source Code Analysis Scope
Files includes and excluded from analyses
txt
eml
editorconfig
babelrc
eslintignore
properties
prettierignore
Overview of Analyzed Files
Basic stats on analyzed files
Intro
For analysis purposes we separate files in scope into several categories: main, test, generated, deployment and build, and other.

  • The main category contains all manually created source code files that are being used in the production.
  • Files in the main category are used as input for other analyses: logical decomposition, concerns, duplication, file size, unit size, and conditional complexity.
  • Test source code files are used only for testing of the product. These files are normally not deployed to production.
  • Build and deployment source code files are used to configure or support build and deployment process.
  • Generated source code files are automatically generated files that have not been manually changed after generation.
  • While a source code folder may contain a number of files, we are primarily interested in the source code files that are being written and maintained by developers.
  • Files containing binaries, documentation, or third-party libraries, for instance, are excluded from analysis. The exception are third-party libraries that have been changed by developers.

main57627 LOC (54%) 759 files
test9246 LOC (8%) 98 files
generated18410 LOC (17%) 5 files
build and deployment860 LOC (<1%) 22 files
other19881 LOC (18%) 64 files
Main Code
All manually created or maintained source code that defines logic of the product that is run in a production environment.
eml
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*".
  • 759 files match defined criteria (57,627 LOC, 100.0% vs. main code):
    • 349 *.scala files (22,269 LOC)
    • 144 *.js files (11,957 LOC)
    • 97 *.java files (11,338 LOC)
    • 80 *.html files (5,015 LOC)
    • 52 *.css files (4,587 LOC)
    • 9 *.tsx files (1,126 LOC)
    • 19 *.ts files (827 LOC)
    • 2 *.sbt files (211 LOC)
    • 1 *.yaml files (98 LOC)
    • 3 *.xml files (61 LOC)
    • 1 *.py files (58 LOC)
    • 1 *.json5 files (55 LOC)
    • 1 *.eml files (25 LOC)
  • " *.scala" is biggest, containing 38.64% of LOC.
  • " *.eml" is smallest, containing 0.04% of LOC.


*.scala22269 LOC (38%) 349 files
*.js11957 LOC (20%) 144 files
*.java11338 LOC (19%) 97 files
*.html5015 LOC (8%) 80 files
*.css4587 LOC (7%) 52 files
*.tsx1126 LOC (1%) 9 files
*.ts827 LOC (1%) 19 files
*.sbt211 LOC (<1%) 2 files
*.yaml98 LOC (<1%) 1 file
*.xml61 LOC (<1%) 3 files
*.py58 LOC (<1%) 1 file
*.json555 LOC (<1%) 1 file
*.eml25 LOC (<1%) 1 file
Test Code
Used only for testing of the product. Normally not deployed in a production environment.
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*/[Tt]est/.*".
    • files with paths like ".*/jest[.][a-zA-Z0-9\.]+".
    • files with paths like ".*[.][Tt]est[.].*".
    • files with paths like ".*[.]test[.].*".
    • files with paths like ".*__tests__.*".
    • files with paths like ".*[.]spec[.]js".
    • files with paths like ".*/__mock[a-zA-Z0-9_\- ]+/.*".
  • 98 files match defined criteria (9,246 LOC, 16.0% vs. main code):
    • 82 *.scala files (8,453 LOC)
    • 9 *.ts files (561 LOC)
    • 6 *.js files (224 LOC)
    • 1 *.xml files (8 LOC)
  • " *.scala" is biggest, containing 91.42% of LOC.
  • " *.xml" is smallest, containing 0.09% of LOC.


*.scala8453 LOC (91%) 82 files
*.ts561 LOC (6%) 9 files
*.js224 LOC (2%) 6 files
*.xml8 LOC (<1%) 1 file
Generated Code
Automatically generated files, not manually changed after generation.
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*/package[-]lock[.]json".
  • 5 files match defined criteria (18,410 LOC, 31.9% vs. main code). All matches are in *.json files.


*.json18410 LOC (100%) 5 files
Build and Deployment Code
Source code used to configure or support build and deployment process.
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*[.]sh".
    • files with paths like ".*/package[-]lock[.]json".
    • files with paths like ".*/package[.]json".
    • files with paths like ".*[.]git[a-z]+".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*([.]|/)webpack([.]|/).*".
  • 22 files match defined criteria (860 LOC, 1.5% vs. main code):
    • 19 *.sh files (733 LOC)
    • 3 *.js files (127 LOC)
  • " *.sh" is biggest, containing 85.23% of LOC.
  • " *.js" is smallest, containing 14.77% of LOC.


*.sh733 LOC (85%) 19 files
*.js127 LOC (14%) 3 files
Other Code
txt
properties
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*[.]md".
    • files with paths like ".*/README[.][a-z0-9]+".
    • files with paths like ".*[.]txt".
    • files with paths like ".*[.]json".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*[.]properties".
    • files with paths like ".*[.]svg".
    • files with paths like ".*/[.]eslintignore".
    • files with paths like ".*/[.]dockerignore".
    • files with paths like ".*/[.]prettierignore".
    • files with paths like ".*[.]editorconfig".
  • 64 files match defined criteria (19,881 LOC, 34.5% vs. main code):
    • 24 *.json files (19,029 LOC)
    • 27 *.md files (548 LOC)
    • 3 *.txt files (247 LOC)
    • 9 *.svg files (56 LOC)
    • 1 *.properties files (1 LOC)
  • " *.json" is biggest, containing 95.71% of LOC.
  • " *.properties" is smallest, containing 0.01% of LOC.


*.json19029 LOC (95%) 24 files
*.md548 LOC (2%) 27 files
*.txt247 LOC (1%) 3 files
*.svg56 LOC (<1%) 9 files
*.properties1 LOC (<1%) 1 file
Analyzers
Info about analyzers used for source code examinations.


2025-05-09 20:42