File Size Overall
  • There are 52 files with 3,413 lines of code.
    • 0 very long files (0 lines of code)
    • 0 long files (0 lines of code)
    • 2 medium size files (586 lines of code)
    • 11 small files (1,418 lines of code)
    • 39 very small files (1,409 lines of code)
0% | 0% | 17% | 41% | 41%
Legend:
1001+
501-1000
201-500
101-200
1-100


explore: grouped by folders | grouped by size | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
css0% | 0% | 100% | 0% | 0%
scala0% | 0% | 9% | 62% | 27%
html0% | 0% | 0% | 13% | 86%
ts0% | 0% | 0% | 0% | 100%
yaml0% | 0% | 0% | 0% | 100%
mjs0% | 0% | 0% | 0% | 100%
xml0% | 0% | 0% | 0% | 100%
js0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
public0% | 0% | 98% | 0% | 1%
app0% | 0% | 7% | 49% | 42%
cdk0% | 0% | 0% | 0% | 100%
.github0% | 0% | 0% | 0% | 100%
ROOT0% | 0% | 0% | 0% | 100%
.devcontainer0% | 0% | 0% | 0% | 100%
conf0% | 0% | 0% | 0% | 100%
nginx0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
main.css
in public/stylesheets
376 -
Agents.scala
in app/services
210 8
models.scala
in app/models
173 3
ScheduledNotificationRunner.scala
in app/services/notification
156 7
CloudWatch.scala
in app/metrics
146 8
PrismLogic.scala
in app/prism
138 12
AMIable.scala
in app/controllers
132 3
Prism.scala
in app/prism
124 9
JsonUtils.scala
in app/prism
120 13
113 9
Attempt.scala
in app/models
111 15
103 1
index.scala.html
in app/views
102 -
AMIableConfig.scala
in app/config
98 1
email.scala.html
in app/views
87 -
amiable.ts
in cdk/lib/amiable
86 1
amiOverlay.scala.html
in app/views/fragments
85 -
amiDetails.scala.html
in app/views/fragments
81 -
Notifications.scala
in app/services/notification
78 2
75 -
Metrics.scala
in app/services
67 -
amiUsage.scala.html
in app/views/fragments
63 -
main.scala.html
in app/views
55 -
AWSMailClient.scala
in app/services/notification
48 1
Charts.scala
in app/metrics
46 1
Login.scala
in app/controllers
41 -
Http.scala
in app/prism
40 1
Urls.scala
in app/prism
35 6
ssaAmiForm.scala.html
in app/views/fragments
34 -
dependabot.yml
in .github
32 -
amiWithUpgrade.scala.html
in app/views/fragments
31 -
DateUtils.scala
in app/utils
30 2
30 -
printSSA.scala.html
in app/views/fragments
27 -
NotificationJob.scala
in app/services/notification
27 1
Aws.scala
in app/utils
25 -
25 -
Stats.scala
in app/utils
23 1
formatInstance.scala.html
in app/views/fragments
19 -
metricsHeader.scala.html
in app/views/fragments
16 -
error.scala.html
in app/views
12 -
ami.scala.html
in app/views
12 -
Healthcheck.scala
in app/controllers
11 -
Serialisation.scala
in app/models
10 -
10 -
10 -
devenv.yaml
in .devcontainer
10 -
9 -
heading.scala.html
in app/views/fragments
6 -
amiable.js
in public/javascripts
6 2
Large Files That Change Often (Top 6)
To change a file, an AI coding agent (or a person) has to read it: these files are read the most for the changes in the past year (lines × changes).
File# lines≈ tokens
to read
# changes
(1y)
≈ lines edited
per change
lines read per
line changed
amiable.ts
in cdk/lib/amiable
86 ~500–1.5k 11 ~15 ~5
CloudWatch.scala
in app/metrics
146 ~1k–3k 2 ~20 ~5
JsonUtils.scala
in app/prism
120 ~700–2k 2 ~20 ~7
dependabot.yml
in .github
32 under 1k 2 ~10 ~3
Stats.scala
in app/utils
23 under 1k 2 ~10 ~2
devenv.yaml
in .devcontainer
10 under 1k 3 ~50 ~0

Tokens are lines × 7 to 14 (analysis.fileReadsForChanges). Lines edited per change are the file's lines added and deleted divided by its commits over the whole history. Agents read about 2,000 lines at a time: when a 17,000-line file was split into modules, the tokens an agent read for the same change fell by 83% (The Economic Benefit of Refactoring, 2026).

Files With Most Units (Top 22)
File# lines# units
Attempt.scala
in app/models
111 15
JsonUtils.scala
in app/prism
120 13
PrismLogic.scala
in app/prism
138 12
113 9
Prism.scala
in app/prism
124 9
CloudWatch.scala
in app/metrics
146 8
Agents.scala
in app/services
210 8
ScheduledNotificationRunner.scala
in app/services/notification
156 7
Urls.scala
in app/prism
35 6
models.scala
in app/models
173 3
AMIable.scala
in app/controllers
132 3
DateUtils.scala
in app/utils
30 2
Notifications.scala
in app/services/notification
78 2
amiable.js
in public/javascripts
6 2
amiable.ts
in cdk/lib/amiable
86 1
Charts.scala
in app/metrics
46 1
AMIableConfig.scala
in app/config
98 1
Http.scala
in app/prism
40 1
Stats.scala
in app/utils
23 1
103 1
NotificationJob.scala
in app/services/notification
27 1
AWSMailClient.scala
in app/services/notification
48 1
Files With Long Lines (Top 11)

There are 11 files with lines longer than 120 characters. In total, there are 20 long lines.

File# lines# units# long lines
email.scala.html
in app/views
87 - 5
amiOverlay.scala.html
in app/views/fragments
85 - 3
amiable.ts
in cdk/lib/amiable
86 1 2
amiWithUpgrade.scala.html
in app/views/fragments
31 - 2
amiUsage.scala.html
in app/views/fragments
63 - 2
25 - 1
amiDetails.scala.html
in app/views/fragments
81 - 1
printSSA.scala.html
in app/views/fragments
27 - 1
main.scala.html
in app/views
55 - 1
75 - 1
Agents.scala
in app/services
210 8 1
Correlations

File Size vs. Commits (all time): 52 points

cdk/lib/amiable/amiable.ts x: 60 commits (all time) y: 86 lines of code .devcontainer/devenv.yaml x: 3 commits (all time) y: 10 lines of code .github/dependabot.yml x: 9 commits (all time) y: 32 lines of code app/metrics/CloudWatch.scala x: 40 commits (all time) y: 146 lines of code app/prism/JsonUtils.scala x: 20 commits (all time) y: 120 lines of code app/utils/Stats.scala x: 7 commits (all time) y: 23 lines of code app/AppLoader.scala x: 24 commits (all time) y: 103 lines of code app/services/notification/AWSMailClient.scala x: 24 commits (all time) y: 48 lines of code app/services/notification/ScheduledNotificationRunner.scala x: 38 commits (all time) y: 156 lines of code app/utils/Aws.scala x: 2 commits (all time) y: 25 lines of code app/controllers/AMIable.scala x: 74 commits (all time) y: 132 lines of code app/views/sendEmailForm.scala.html x: 3 commits (all time) y: 25 lines of code cdk/eslint.config.mjs x: 2 commits (all time) y: 5 lines of code eslint.config.mjs x: 2 commits (all time) y: 30 lines of code app/controllers/Login.scala x: 12 commits (all time) y: 41 lines of code app/models/Serialisation.scala x: 10 commits (all time) y: 10 lines of code app/models/models.scala x: 47 commits (all time) y: 173 lines of code app/services/Agents.scala x: 40 commits (all time) y: 210 lines of code app/services/Metrics.scala x: 23 commits (all time) y: 67 lines of code app/config/AMIableConfig.scala x: 34 commits (all time) y: 98 lines of code app/controllers/Healthcheck.scala x: 11 commits (all time) y: 11 lines of code app/metrics/Charts.scala x: 4 commits (all time) y: 46 lines of code app/models/Attempt.scala x: 25 commits (all time) y: 111 lines of code app/prism/Http.scala x: 6 commits (all time) y: 40 lines of code app/prism/Prism.scala x: 25 commits (all time) y: 124 lines of code app/prism/PrismLogic.scala x: 30 commits (all time) y: 138 lines of code app/prism/Recommendations.scala x: 9 commits (all time) y: 113 lines of code app/prism/Urls.scala x: 15 commits (all time) y: 35 lines of code app/services/notification/NotificationJob.scala x: 18 commits (all time) y: 27 lines of code app/services/notification/Notifications.scala x: 23 commits (all time) y: 78 lines of code app/utils/DateUtils.scala x: 10 commits (all time) y: 30 lines of code conf/logback.xml x: 7 commits (all time) y: 9 lines of code app/views/ami.scala.html x: 28 commits (all time) y: 12 lines of code app/views/fragments/amiDetails.scala.html x: 9 commits (all time) y: 81 lines of code app/views/fragments/amiOverlay.scala.html x: 23 commits (all time) y: 85 lines of code app/views/fragments/amiWithUpgrade.scala.html x: 9 commits (all time) y: 31 lines of code app/views/instanceAMIs.scala.html x: 45 commits (all time) y: 75 lines of code app/views/email.scala.html x: 14 commits (all time) y: 87 lines of code app/views/fragments/ssaAmiForm.scala.html x: 10 commits (all time) y: 34 lines of code app/views/fragments/printSSA.scala.html x: 12 commits (all time) y: 27 lines of code app/views/index.scala.html x: 30 commits (all time) y: 102 lines of code public/javascripts/amiable.js x: 6 commits (all time) y: 6 lines of code public/stylesheets/main.css x: 56 commits (all time) y: 376 lines of code nginx/nginx-mapping.yml x: 2 commits (all time) y: 4 lines of code app/views/fragments/amiUsage.scala.html x: 9 commits (all time) y: 63 lines of code app/views/fragments/metricsHeader.scala.html x: 6 commits (all time) y: 16 lines of code app/views/fragments/formatInstance.scala.html x: 4 commits (all time) y: 19 lines of code app/views/loggedOut.scala.html x: 2 commits (all time) y: 10 lines of code app/views/main.scala.html x: 11 commits (all time) y: 55 lines of code app/views/error.scala.html x: 6 commits (all time) y: 12 lines of code app/views/fragments/heading.scala.html x: 2 commits (all time) y: 6 lines of code
376.0
lines of code
  min: 4.0
  average: 65.63
  25th percentile: 16.75
  median: 40.5
  75th percentile: 101.0
  max: 376.0
0 74.0
commits (all time)
min: 2.0 | average: 18.13 | 25th percentile: 6.0 | median: 11.0 | 75th percentile: 25.0 | max: 74.0

File Size vs. Contributors (all time): 52 points

cdk/lib/amiable/amiable.ts x: 13 contributors (all time) y: 86 lines of code .devcontainer/devenv.yaml x: 3 contributors (all time) y: 10 lines of code .github/dependabot.yml x: 6 contributors (all time) y: 32 lines of code app/metrics/CloudWatch.scala x: 11 contributors (all time) y: 146 lines of code app/prism/JsonUtils.scala x: 11 contributors (all time) y: 120 lines of code app/utils/Stats.scala x: 5 contributors (all time) y: 23 lines of code app/AppLoader.scala x: 11 contributors (all time) y: 103 lines of code app/services/notification/AWSMailClient.scala x: 9 contributors (all time) y: 48 lines of code app/services/notification/ScheduledNotificationRunner.scala x: 12 contributors (all time) y: 156 lines of code app/utils/Aws.scala x: 1 contributors (all time) y: 25 lines of code app/controllers/AMIable.scala x: 13 contributors (all time) y: 132 lines of code cdk/eslint.config.mjs x: 2 contributors (all time) y: 5 lines of code eslint.config.mjs x: 2 contributors (all time) y: 30 lines of code app/controllers/Login.scala x: 9 contributors (all time) y: 41 lines of code app/models/Serialisation.scala x: 5 contributors (all time) y: 10 lines of code app/models/models.scala x: 11 contributors (all time) y: 173 lines of code app/services/Agents.scala x: 14 contributors (all time) y: 210 lines of code app/services/Metrics.scala x: 11 contributors (all time) y: 67 lines of code app/config/AMIableConfig.scala x: 15 contributors (all time) y: 98 lines of code app/controllers/Healthcheck.scala x: 8 contributors (all time) y: 11 lines of code app/metrics/Charts.scala x: 3 contributors (all time) y: 46 lines of code app/models/Attempt.scala x: 8 contributors (all time) y: 111 lines of code app/prism/Http.scala x: 5 contributors (all time) y: 40 lines of code app/prism/Prism.scala x: 8 contributors (all time) y: 124 lines of code app/prism/PrismLogic.scala x: 8 contributors (all time) y: 138 lines of code app/prism/Recommendations.scala x: 5 contributors (all time) y: 113 lines of code app/prism/Urls.scala x: 7 contributors (all time) y: 35 lines of code app/services/notification/NotificationJob.scala x: 6 contributors (all time) y: 27 lines of code app/services/notification/Notifications.scala x: 9 contributors (all time) y: 78 lines of code app/utils/DateUtils.scala x: 5 contributors (all time) y: 30 lines of code conf/logback.xml x: 4 contributors (all time) y: 9 lines of code app/views/ami.scala.html x: 6 contributors (all time) y: 12 lines of code app/views/fragments/amiDetails.scala.html x: 5 contributors (all time) y: 81 lines of code app/views/fragments/amiOverlay.scala.html x: 6 contributors (all time) y: 85 lines of code app/views/fragments/amiWithUpgrade.scala.html x: 4 contributors (all time) y: 31 lines of code app/views/instanceAMIs.scala.html x: 5 contributors (all time) y: 75 lines of code app/views/email.scala.html x: 5 contributors (all time) y: 87 lines of code app/views/fragments/ssaAmiForm.scala.html x: 3 contributors (all time) y: 34 lines of code app/views/fragments/printSSA.scala.html x: 4 contributors (all time) y: 27 lines of code app/views/index.scala.html x: 4 contributors (all time) y: 102 lines of code public/javascripts/amiable.js x: 3 contributors (all time) y: 6 lines of code public/stylesheets/main.css x: 7 contributors (all time) y: 376 lines of code nginx/nginx-mapping.yml x: 1 contributors (all time) y: 4 lines of code app/views/fragments/amiUsage.scala.html x: 3 contributors (all time) y: 63 lines of code app/views/fragments/metricsHeader.scala.html x: 1 contributors (all time) y: 16 lines of code app/views/fragments/formatInstance.scala.html x: 3 contributors (all time) y: 19 lines of code app/views/loggedOut.scala.html x: 2 contributors (all time) y: 10 lines of code app/views/main.scala.html x: 2 contributors (all time) y: 55 lines of code app/views/error.scala.html x: 2 contributors (all time) y: 12 lines of code app/views/fragments/heading.scala.html x: 2 contributors (all time) y: 6 lines of code
376.0
lines of code
  min: 4.0
  average: 65.63
  25th percentile: 16.75
  median: 40.5
  75th percentile: 101.0
  max: 376.0
0 15.0
contributors (all time)
min: 1.0 | average: 5.98 | 25th percentile: 3.0 | median: 5.0 | 75th percentile: 8.75 | max: 15.0

File Size vs. Commits (30 days): 2 points

cdk/lib/amiable/amiable.ts x: 8 commits (30d) y: 86 lines of code .devcontainer/devenv.yaml x: 1 commits (30d) y: 10 lines of code
86.0
lines of code
  min: 10.0
  average: 48.0
  25th percentile: 10.0
  median: 48.0
  75th percentile: 86.0
  max: 86.0
0 8.0
commits (30d)
min: 1.0 | average: 4.5 | 25th percentile: 1.0 | median: 4.5 | 75th percentile: 8.0 | max: 8.0

File Size vs. Contributors (30 days): 2 points

cdk/lib/amiable/amiable.ts x: 2 contributors (30d) y: 86 lines of code .devcontainer/devenv.yaml x: 1 contributors (30d) y: 10 lines of code
86.0
lines of code
  min: 10.0
  average: 48.0
  25th percentile: 10.0
  median: 48.0
  75th percentile: 86.0
  max: 86.0
0 2.0
contributors (30d)
min: 1.0 | average: 1.5 | 25th percentile: 1.0 | median: 1.5 | 75th percentile: 2.0 | max: 2.0

File Size vs. Commits (90 days): 2 points

cdk/lib/amiable/amiable.ts x: 8 commits (90d) y: 86 lines of code .devcontainer/devenv.yaml x: 1 commits (90d) y: 10 lines of code
86.0
lines of code
  min: 10.0
  average: 48.0
  25th percentile: 10.0
  median: 48.0
  75th percentile: 86.0
  max: 86.0
0 8.0
commits (90d)
min: 1.0 | average: 4.5 | 25th percentile: 1.0 | median: 4.5 | 75th percentile: 8.0 | max: 8.0

File Size vs. Contributors (90 days): 2 points

cdk/lib/amiable/amiable.ts x: 2 contributors (90d) y: 86 lines of code .devcontainer/devenv.yaml x: 1 contributors (90d) y: 10 lines of code
86.0
lines of code
  min: 10.0
  average: 48.0
  25th percentile: 10.0
  median: 48.0
  75th percentile: 86.0
  max: 86.0
0 2.0
contributors (90d)
min: 1.0 | average: 1.5 | 25th percentile: 1.0 | median: 1.5 | 75th percentile: 2.0 | max: 2.0
About This Analysis
  • File size measurements show the distribution of size of files.
  • Files are classified in four categories based on their size (lines of code): 1-100 (very small files), 101-200 (small files), 201-500 (medium size files), 501-1000 (long files), 1001+(very long files).
  • It is a good practice to keep files small. Long files may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...