JetBrains / amper
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
properties
plist
pro
editorconfig
proto
gitattributes
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.

main86344 LOC (42%) 1,910 files
test21747 LOC (10%) 333 files
generated4225 LOC (2%) 52 files
build and deployment3060 LOC (1%) 34 files
other89298 LOC (43%) 556 files
Main Code
All manually created or maintained source code that defines logic of the product that is run in a production environment.
proto
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*".
  • 1910 files match defined criteria (86,344 LOC, 100.0% vs. main code):
    • 956 *.kt files (51,126 LOC)
    • 249 *.java files (19,030 LOC)
    • 1 *.css files (8,480 LOC)
    • 594 *.yaml files (4,447 LOC)
    • 61 *.xml files (1,463 LOC)
    • 12 *.html files (455 LOC)
    • 9 *.sql files (400 LOC)
    • 4 *.scss files (307 LOC)
    • 3 *.kts files (225 LOC)
    • 11 *.swift files (191 LOC)
    • 8 *.toml files (183 LOC)
    • 2 *.proto files (37 LOC)
  • " *.kt" is biggest, containing 59.21% of LOC.
  • " *.proto" is smallest, containing 0.04% of LOC.


*.kt51126 LOC (59%) 956 files
*.java19030 LOC (22%) 249 files
*.css8480 LOC (9%) 1 file
*.yaml4447 LOC (5%) 594 files
*.xml1463 LOC (1%) 61 files
*.html455 LOC (<1%) 12 files
*.sql400 LOC (<1%) 9 files
*.scss307 LOC (<1%) 4 files
*.kts225 LOC (<1%) 3 files
*.swift191 LOC (<1%) 11 files
*.toml183 LOC (<1%) 8 files
*.proto37 LOC (<1%) 2 files
Test Code
Used only for testing of the product. Normally not deployed in a production environment.
proto
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*/[Tt]est/.*".
    • files with paths like ".*[-]tests[-].*".
    • files with paths like ".*/src/androidTest/.*".
    • files with paths like ".*/mock[a-zA-Z0-9_\- ]+/.*".
    • files with paths like ".*[-]test[-].*".
    • files with paths like ".*[-]tests/.*".
    • files with paths like ".*/test[.].*".
    • files with paths like ".*/tests_.*".
    • files with paths like ".*_tests[.].*".
    • files with paths like ".*/test_.*".
    • files with paths like ".*/testing[.].*".
  • 333 files match defined criteria (21,747 LOC, 25.2% vs. main code):
    • 275 *.kt files (21,036 LOC)
    • 12 *.xml files (280 LOC)
    • 32 *.yaml files (169 LOC)
    • 5 *.kts files (116 LOC)
    • 7 *.java files (72 LOC)
    • 1 *.bat files (68 LOC)
    • 1 *.proto files (6 LOC)
  • " *.kt" is biggest, containing 96.73% of LOC.
  • " *.proto" is smallest, containing 0.03% of LOC.


*.kt21036 LOC (96%) 275 files
*.xml280 LOC (1%) 12 files
*.yaml169 LOC (<1%) 32 files
*.kts116 LOC (<1%) 5 files
*.java72 LOC (<1%) 7 files
*.bat68 LOC (<1%) 1 file
*.proto6 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 ".*[.]java" AND any line of content like ".*[/][/] This is a generated file[.] Not intended for manual editing[.].*".
    • files with any line of content like "//[ ]*Generated by .*".
    • files with paths like ".*/generated/.*".
  • 52 files match defined criteria (4,225 LOC, 4.9% vs. main code):
    • 50 *.java files (4,104 LOC)
    • 2 *.kt files (121 LOC)
  • " *.java" is biggest, containing 97.14% of LOC.
  • " *.kt" is smallest, containing 2.86% of LOC.


*.java4104 LOC (97%) 50 files
*.kt121 LOC (2%) 2 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 ".*[.]bat".
    • files with paths like ".*/AndroidManifest[.]xml".
    • files with paths like ".*[.]git[a-z]+".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*[.]sh".
    • files with paths like ".*/pom[.]xml".
    • files with paths like ".*/[.]gitattributes".
  • 34 files match defined criteria (3,060 LOC, 3.5% vs. main code):
    • 8 *.bat files (1,481 LOC)
    • 22 *.xml files (961 LOC)
    • 4 *.sh files (618 LOC)
  • " *.bat" is biggest, containing 48.4% of LOC.
  • " *.sh" is smallest, containing 20.2% of LOC.


*.bat1481 LOC (48%) 8 files
*.xml961 LOC (31%) 22 files
*.sh618 LOC (20%) 4 files
Other Code
txt
properties
plist
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 ".*/[Ee]xamples/.*".
    • files with paths like ".*[.]editorconfig".
    • files with paths like ".*/[.]gitignore".
    • files with paths like ".*[.]json".
    • files with paths like ".*[.]properties".
    • files with paths like ".*[.]txt".
    • files with paths like ".*[.]svg".
    • files with paths like ".*/[Ss]amples/.*".
    • files with paths like ".*/LICENSE[.][a-z0-9]+".
    • files with paths like ".*[.]plist".
    • files with paths like ".*/[Dd]emos?/.*".
    • files with paths like ".*/checkstyle.*".
  • 556 files match defined criteria (89,298 LOC, 103.4% vs. main code):
    • 213 *.txt files (33,290 LOC)
    • 10 *.svg files (27,652 LOC)
    • 2 *.css files (15,585 LOC)
    • 97 *.java files (4,212 LOC)
    • 10 *.json files (1,884 LOC)
    • 8 *.bat files (1,504 LOC)
    • 62 *.kt files (1,473 LOC)
    • 57 *.properties files (1,047 LOC)
    • 25 *.html files (909 LOC)
    • 14 *.sql files (604 LOC)
    • 19 *.plist files (491 LOC)
    • 15 *.md files (385 LOC)
    • 15 *.yaml files (139 LOC)
    • 5 *.xml files (55 LOC)
    • 2 *.swift files (42 LOC)
    • 2 *.toml files (26 LOC)
  • " *.txt" is biggest, containing 37.28% of LOC.
  • " *.toml" is smallest, containing 0.03% of LOC.


*.txt33290 LOC (37%) 213 files
*.svg27652 LOC (30%) 10 files
*.css15585 LOC (17%) 2 files
*.java4212 LOC (4%) 97 files
*.json1884 LOC (2%) 10 files
*.bat1504 LOC (1%) 8 files
*.kt1473 LOC (1%) 62 files
*.properties1047 LOC (1%) 57 files
*.html909 LOC (1%) 25 files
*.sql604 LOC (<1%) 14 files
*.plist491 LOC (<1%) 19 files
*.md385 LOC (<1%) 15 files
*.yaml139 LOC (<1%) 15 files
*.xml55 LOC (<1%) 5 files
*.swift42 LOC (<1%) 2 files
*.toml26 LOC (<1%) 2 files
Analyzers
Info about analyzers used for source code examinations.


2026-01-18 17:31