File Size Overall
  • There are 304 files with 8,983 lines of code.
    • 0 very long files (0 lines of code)
    • 0 long files (0 lines of code)
    • 6 medium size files (1,681 lines of code)
    • 14 small files (1,858 lines of code)
    • 284 very small files (5,444 lines of code)
0% | 0% | 18% | 20% | 60%
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
scala0% | 0% | 18% | 29% | 51%
ts0% | 0% | 73% | 16% | 9%
html0% | 0% | 18% | 20% | 60%
yaml0% | 0% | 0% | 0% | 100%
js0% | 0% | 0% | 0% | 100%
css0% | 0% | 0% | 0% | 100%
xml0% | 0% | 0% | 0% | 100%
pub0% | 0% | 0% | 0% | 100%
mjs0% | 0% | 0% | 0% | 100%
rb0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
app0% | 0% | 20% | 26% | 53%
cdk0% | 0% | 72% | 16% | 11%
imageCopier0% | 0% | 0% | 52% | 47%
roles0% | 0% | 0% | 0% | 100%
public0% | 0% | 0% | 0% | 100%
conf0% | 0% | 0% | 0% | 100%
.github0% | 0% | 0% | 0% | 100%
ROOT0% | 0% | 0% | 0% | 100%
.devcontainer0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
RecipeController.scala
in app/controllers
360 8
amigo.ts
in cdk/lib
330 2
AppComponents.scala
in app/components
318 1
BaseImageController.scala
in app/controllers
253 7
219 -
201 -
PackerRunner.scala
in app/packer
161 3
Dynamo.scala
in app/data
156 8
RecipeUsage.scala
in app/prism
152 10
Attempt.scala
in imageCopier/src/main/scala/com/gu/imageCopier/attempt
152 17
Recipes.scala
in app/data
143 7
Bakes.scala
in app/data
136 11
BaseImage.scala
in app/models
133 8
BakeController.scala
in app/controllers
132 5
127 1
PrismData.scala
in app/services
119 3
Prism.scala
in app/prism
116 2
roles.scala.html
in app/views
115 -
109 -
AmiActions.scala
in imageCopier/src/main/scala/com/gu/imageCopier
107 5
98 3
BakeFailedNotifier.scala
in app/notification
97 3
95 -
main.css
in public/stylesheets
94 -
SNS.scala
in app/notification
91 6
main.yml
in roles/kong/tasks
91 -
89 1
88 3
PackerEC2Client.scala
in app/housekeeping/utils
86 3
LambdaEntrypoint.scala
in imageCopier/src/main/scala/com/gu/imageCopier
86 2
84 4
72 1
Login.scala
in app/controllers
70 2
Behaviours.scala
in app/event
70 5
Roles.scala
in app/data
66 5
main.yml
in roles/node/tasks
66 -
BaseImages.scala
in app/data
65 4
64 1
64 4
61 4
BakeScheduler.scala
in app/schedule
59 4
59 -
Recipe.scala
in app/models
58 -
57 1
Bake.scala
in app/models
57 1
56 2
BakeEvent.scala
in app/event
56 1
NotificationSender.scala
in app/notification
55 2
RoleParser.scala
in app/ansible
55 5
54 -
Large Files That Change Often (Top 20)
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
AppComponents.scala
in app/components
318 ~2k–5k 17 ~20 ~15
RecipeUsage.scala
in app/prism
152 ~1k–3k 18 ~10 ~15
SNS.scala
in app/notification
91 ~500–1.5k 21 ~15 ~7
89 ~500–1.5k 21 ~7 ~15
Behaviours.scala
in app/event
70 ~300–1k 18 ~10 ~5
main.yml
in roles/node/tasks
66 ~300–1k 14 ~15 ~3
127 ~700–2k 6 ~30 ~5
BaseImage.scala
in app/models
133 ~700–2k 5 ~10 ~10
amigo.ts
in cdk/lib
330 ~2k–5k 2 ~20 ~15
main.yml
in roles/uv/tasks
42 under 1k 12 ~15 ~3
219 ~1.5k–5k 2 ~150 ~2
BakeController.scala
in app/controllers
132 ~700–2k 3 ~10 ~10
98 ~500–1.5k 3 ~30 ~3
NotificationSender.scala
in app/notification
55 ~300–1k 5 ~15 ~5
84 ~500–1.5k 3 ~15 ~5
BakeLogs.scala
in app/data
49 under 1k 4 ~15 ~3
PackerEC2Client.scala
in app/housekeeping/utils
86 ~500–1.5k 2 ~30 ~3
57 ~300–1k 3 ~10 ~5
main.yml
in roles/whisperx/tasks
15 under 1k 11 ~15 ~1
PackerBuilderConfig.scala
in app/models/packer
52 ~300–1k 3 ~7 ~7

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 50)
File# lines# units
Attempt.scala
in imageCopier/src/main/scala/com/gu/imageCopier/attempt
152 17
Bakes.scala
in app/data
136 11
RecipeUsage.scala
in app/prism
152 10
BaseImage.scala
in app/models
133 8
RecipeController.scala
in app/controllers
360 8
Dynamo.scala
in app/data
156 8
amigo.js
in public/javascripts
43 8
roles.js
in public/javascripts
37 8
BaseImageController.scala
in app/controllers
253 7
Recipes.scala
in app/data
143 7
SNS.scala
in app/notification
91 6
RoleParser.scala
in app/ansible
55 5
BakeController.scala
in app/controllers
132 5
Roles.scala
in app/data
66 5
Behaviours.scala
in app/event
70 5
AmiActions.scala
in imageCopier/src/main/scala/com/gu/imageCopier
107 5
61 4
BakeScheduler.scala
in app/schedule
59 4
BakeLogs.scala
in app/data
49 4
BaseImages.scala
in app/data
65 4
84 4
64 4
show-bake.js
in public/javascripts
24 4
PackerEC2Client.scala
in app/housekeeping/utils
86 3
52 3
BakeFailedNotifier.scala
in app/notification
97 3
98 3
88 3
PrismData.scala
in app/services
119 3
PackerRunner.scala
in app/packer
161 3
amigo.ts
in cdk/lib
330 2
HousekeepingScheduler.scala
in app/housekeeping
30 2
56 2
49 2
NotificationSender.scala
in app/notification
55 2
Prism.scala
in app/prism
116 2
24 2
Login.scala
in app/controllers
70 2
53 2
DeleteEvent.scala
in imageCopier/src/main/scala/com/gu/imageCopier
34 2
LambdaEntrypoint.scala
in imageCopier/src/main/scala/com/gu/imageCopier
86 2
Failure.scala
in imageCopier/src/main/scala/com/gu/imageCopier/attempt
36 2
package.scala
in imageCopier/src/main/scala/com/gu/imageCopier/attempt
15 2
72 1
127 1
BakeDeletion.scala
in app/housekeeping
42 1
HousekeepingJobWrapper.scala
in app/housekeeping
18 1
BakesRepo.scala
in app/housekeeping/utils
21 1
57 1
BakeJob.scala
in app/schedule
14 1
Files With Long Lines (Top 47)

There are 47 files with lines longer than 120 characters. In total, there are 123 long lines.

File# lines# units# long lines
201 - 13
95 - 9
54 - 9
41 - 8
45 - 7
amigo.ts
in cdk/lib
330 2 6
32 - 5
29 - 4
main.yml
in roles/node/tasks
66 - 4
layout.scala.html
in app/views
50 - 3
109 - 3
roles.scala.html
in app/views
115 - 3
72 1 2
BakeFailedNotifier.scala
in app/notification
97 3 2
recipeTable.scala.html
in app/views/fragments
30 - 2
27 - 2
26 - 2
index.scala.html
in app/views
10 - 2
26 - 2
59 - 2
main.yml
in roles/cdk-base/tasks
40 - 2
main.yml
in roles/docker/tasks
39 - 2
main.yml
in roles/aws-rds-root-cert-ca/tasks
17 - 2
main.yml
in roles/oauth2-proxy/tasks
19 - 2
main.yml
in roles/kong/tasks
91 - 2
main.yml
in roles/docker-compose/tasks
15 - 2
219 - 1
BaseImage.scala
in app/models
133 8 1
Login.scala
in app/controllers
70 2 1
BakeController.scala
in app/controllers
132 5 1
usagesColumn.scala.html
in app/views/fragments
12 - 1
24 - 1
main.yml
in roles/cloud-watch-logs/tasks
27 - 1
main.yml
in roles/disable-missed-daily-tasks/tasks
9 - 1
install-cfn-tools.yml
in roles/aws-tools/tasks
16 - 1
21 - 1
install-cfn-tools-Debian.yml
in roles/aws-tools/tasks
16 - 1
main.yml
in roles/cloudwatch-hardware-monitoring-cronjob/tasks
28 - 1
main.yml
in roles/aws-kinesis-agent/tasks
33 - 1
main.yml
in roles/ghostscript/defaults
2 - 1
main.yml
in roles/llama.cpp/tasks
28 - 1
main.yml
in roles/uv/tasks
42 - 1
main.yml
in roles/disk-available-cronjob/tasks
6 - 1
main.yml
in roles/logstash-deb/tasks
25 - 1
main.yml
in roles/packages/tasks
46 - 1
main.yml
in roles/nginx+pagespeed/tasks
32 - 1
main.yml
in roles/cloud-watch-monitoring/tasks
5 - 1
Correlations

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

app/components/AppComponents.scala x: 177 commits (all time) y: 318 lines of code app/models/packer/PackerBuilderConfig.scala x: 22 commits (all time) y: 52 lines of code app/packer/PackerBuildConfigGenerator.scala x: 88 commits (all time) y: 89 lines of code app/packer/PackerConfig.scala x: 10 commits (all time) y: 8 lines of code cdk/lib/amigo-developer-policy.ts x: 2 commits (all time) y: 219 lines of code cdk/lib/amigo.ts x: 100 commits (all time) y: 330 lines of code .devcontainer/devenv.yaml x: 3 commits (all time) y: 8 lines of code app/AppLoader.scala x: 26 commits (all time) y: 64 lines of code roles/uv/defaults/main.yml x: 5 commits (all time) y: 4 lines of code roles/uv/tasks/main.yml x: 12 commits (all time) y: 42 lines of code roles/whisperx/tasks/main.yml x: 25 commits (all time) y: 15 lines of code app/schedule/ScheduledBakeRunner.scala x: 29 commits (all time) y: 57 lines of code roles/cuda-cleanup/defaults/main.yml x: 4 commits (all time) y: 2 lines of code roles/cuda-cleanup/tasks/main.yml x: 6 commits (all time) y: 13 lines of code .github/dependabot.yml x: 24 commits (all time) y: 28 lines of code roles/llama.cpp/defaults/main.yml x: 4 commits (all time) y: 3 lines of code roles/llama.cpp/tasks/main.yml x: 5 commits (all time) y: 28 lines of code cdk/lib/image-copier-lambda.ts x: 23 commits (all time) y: 127 lines of code app/models/BaseImage.scala x: 54 commits (all time) y: 133 lines of code roles/whisperx/defaults/main.yml x: 8 commits (all time) y: 3 lines of code roles/aws-tools/tasks/install-cfn-tools-Ubuntu-post-focal.yml x: 9 commits (all time) y: 21 lines of code roles/aws-efs/meta/main.yml x: 8 commits (all time) y: 20 lines of code roles/aws-efs/tasks/main.yml x: 7 commits (all time) y: 29 lines of code roles/elasticsearch-without-java/meta/main.yml x: 2 commits (all time) y: 3 lines of code roles/elasticsearch-without-java/tasks/main.yml x: 2 commits (all time) y: 14 lines of code roles/uv/meta/main.yml x: 3 commits (all time) y: 3 lines of code roles/java25corretto/tasks/main.yml x: 4 commits (all time) y: 22 lines of code roles/node/defaults/main.yml x: 9 commits (all time) y: 2 lines of code roles/node/tasks/main.yml x: 31 commits (all time) y: 66 lines of code app/event/Behaviours.scala x: 49 commits (all time) y: 70 lines of code app/notification/SNS.scala x: 33 commits (all time) y: 91 lines of code app/prism/RecipeUsage.scala x: 65 commits (all time) y: 152 lines of code roles/whisper-cpp/defaults/main.yml x: 13 commits (all time) y: 7 lines of code roles/whisper-cpp/meta/main.yml x: 3 commits (all time) y: 9 lines of code roles/whisper-cpp/tasks/main.yml x: 23 commits (all time) y: 31 lines of code app/housekeeping/DeleteLongRunningEC2Instances.scala x: 10 commits (all time) y: 61 lines of code app/housekeeping/TimeOutLongRunningBakes.scala x: 17 commits (all time) y: 52 lines of code app/housekeeping/utils/PackerEC2Client.scala x: 13 commits (all time) y: 86 lines of code app/notification/NotificationSender.scala x: 19 commits (all time) y: 55 lines of code app/services/AmiMetadataLookup.scala x: 11 commits (all time) y: 34 lines of code app/controllers/BakeController.scala x: 72 commits (all time) y: 132 lines of code app/data/BakeLogs.scala x: 24 commits (all time) y: 49 lines of code app/data/PackageList.scala x: 24 commits (all time) y: 84 lines of code app/notification/LambdaDistributionBucket.scala x: 11 commits (all time) y: 98 lines of code app/packer/PackerRunner.scala x: 53 commits (all time) y: 161 lines of code cdk/eslint.config.mjs x: 3 commits (all time) y: 14 lines of code cdk/lib/image-copier-kms.ts x: 5 commits (all time) y: 72 lines of code roles/eotk-jammy/tasks/main.yml x: 4 commits (all time) y: 11 lines of code roles/eotk-jammy/meta/main.yml x: 2 commits (all time) y: 5 lines of code roles/aws-tools/tasks/main.yml x: 25 commits (all time) y: 17 lines of code app/controllers/BaseImageController.scala x: 54 commits (all time) y: 253 lines of code app/data/BaseImages.scala x: 29 commits (all time) y: 65 lines of code app/models/NotificationConfig.scala x: 9 commits (all time) y: 8 lines of code app/views/editBaseImage.scala.html x: 26 commits (all time) y: 45 lines of code app/views/newBaseImage.scala.html x: 27 commits (all time) y: 32 lines of code app/views/showBaseImage.scala.html x: 32 commits (all time) y: 59 lines of code imageCopier/src/main/scala/com/gu/imageCopier/AmiActions.scala x: 14 commits (all time) y: 107 lines of code imageCopier/src/main/scala/com/gu/imageCopier/LambdaEntrypoint.scala x: 12 commits (all time) y: 86 lines of code riff-raff.yaml x: 33 commits (all time) y: 27 lines of code roles/aws-tools/files/aws.pub x: 4 commits (all time) y: 28 lines of code roles/cdk-base/meta/main.yml x: 12 commits (all time) y: 12 lines of code roles/cdk-base/tasks/main.yml x: 27 commits (all time) y: 40 lines of code roles/kong/defaults/main.yml x: 35 commits (all time) y: 7 lines of code roles/kong/files/templates/error.html x: 4 commits (all time) y: 6 lines of code roles/kong/tasks/main.yml x: 48 commits (all time) y: 91 lines of code roles/poetry/meta/main.yml x: 5 commits (all time) y: 11 lines of code roles/poetry/tasks/main.yml x: 5 commits (all time) y: 8 lines of code app/controllers/Login.scala x: 19 commits (all time) y: 70 lines of code app/controllers/RecipeController.scala x: 71 commits (all time) y: 360 lines of code app/housekeeping/MarkOldUnusedBakesForDeletion.scala x: 24 commits (all time) y: 56 lines of code app/notification/BakeFailedNotifier.scala x: 12 commits (all time) y: 97 lines of code app/prism/Prism.scala x: 26 commits (all time) y: 116 lines of code app/services/PrismData.scala x: 14 commits (all time) y: 119 lines of code app/views/showUsage.scala.html x: 8 commits (all time) y: 95 lines of code conf/logback-PROD.xml x: 6 commits (all time) y: 22 lines of code roles/aws-rds-root-cert-ca/tasks/main.yml x: 8 commits (all time) y: 17 lines of code roles/aws-rds-root-cert-ca/vars/main.yml x: 5 commits (all time) y: 5 lines of code roles/browser-testing/meta/main.yml x: 7 commits (all time) y: 3 lines of code roles/browser-testing/tasks/main.yml x: 18 commits (all time) y: 18 lines of code roles/cdk-base/defaults/main.yml x: 6 commits (all time) y: 3 lines of code roles/cloud-watch-monitoring/tasks/main.yml x: 8 commits (all time) y: 5 lines of code roles/docker-pull/tasks/main.yml x: 3 commits (all time) y: 6 lines of code roles/docker/tasks/main.yml x: 27 commits (all time) y: 39 lines of code roles/aws-kinesis-agent/tasks/main.yml x: 13 commits (all time) y: 33 lines of code roles/ghostscript/defaults/main.yml x: 2 commits (all time) y: 2 lines of code roles/ghostscript/tasks/main.yml x: 2 commits (all time) y: 20 lines of code roles/kong/meta/main.yml x: 9 commits (all time) y: 3 lines of code app/data/DynamoFormats.scala x: 19 commits (all time) y: 10 lines of code app/models/BakeStatus.scala x: 23 commits (all time) y: 24 lines of code app/models/CustomisedRole.scala x: 34 commits (all time) y: 88 lines of code app/models/packer/PackerBuildConfig.scala x: 15 commits (all time) y: 12 lines of code app/models/packer/PackerProvisionerConfig.scala x: 18 commits (all time) y: 45 lines of code app/models/packer/PackerVariablesConfig.scala x: 16 commits (all time) y: 24 lines of code roles/puppeteer/tasks/main.yml x: 12 commits (all time) y: 16 lines of code roles/filebeat/tasks/main.yml x: 4 commits (all time) y: 9 lines of code roles/neo4j/tasks/main.yml x: 7 commits (all time) y: 9 lines of code app/ansible/PlaybookGenerator.scala x: 14 commits (all time) y: 24 lines of code roles/cloud-watch-agent-logs/meta/main.yml x: 1 commits (all time) y: 3 lines of code roles/cloud-watch-agent-logs/tasks/main.yml x: 1 commits (all time) y: 8 lines of code app/views/showRecipe.scala.html x: 69 commits (all time) y: 201 lines of code roles/ruby-gems/tasks/main.yml x: 7 commits (all time) y: 20 lines of code app/ansible/RoleParser.scala x: 8 commits (all time) y: 55 lines of code app/controllers/ControllerHelpers.scala x: 13 commits (all time) y: 24 lines of code app/controllers/HousekeepingController.scala x: 19 commits (all time) y: 36 lines of code app/controllers/RoleController.scala x: 16 commits (all time) y: 13 lines of code app/controllers/RootController.scala x: 13 commits (all time) y: 16 lines of code app/data/Bakes.scala x: 38 commits (all time) y: 136 lines of code app/data/Dynamo.scala x: 9 commits (all time) y: 156 lines of code app/data/Recipes.scala x: 47 commits (all time) y: 143 lines of code app/data/Roles.scala x: 15 commits (all time) y: 66 lines of code app/housekeeping/BakeDeletion.scala x: 16 commits (all time) y: 42 lines of code app/housekeeping/HousekeepingJobWrapper.scala x: 4 commits (all time) y: 18 lines of code app/housekeeping/HousekeepingScheduler.scala x: 4 commits (all time) y: 30 lines of code app/housekeeping/MarkOrphanedBakesForDeletion.scala x: 15 commits (all time) y: 49 lines of code app/models/AmiId.scala x: 11 commits (all time) y: 7 lines of code app/models/Bake.scala x: 19 commits (all time) y: 57 lines of code app/models/BakeId.scala x: 21 commits (all time) y: 32 lines of code app/models/BakeLog.scala x: 17 commits (all time) y: 24 lines of code app/models/BaseImageId.scala x: 11 commits (all time) y: 10 lines of code app/models/Recipe.scala x: 21 commits (all time) y: 58 lines of code app/models/RecipeId.scala x: 17 commits (all time) y: 11 lines of code app/packer/ImageDetails.scala x: 6 commits (all time) y: 24 lines of code app/packer/PackerOutputParser.scala x: 15 commits (all time) y: 64 lines of code app/packer/PackerProcessMonitor.scala x: 7 commits (all time) y: 53 lines of code app/schedule/BakeJob.scala x: 4 commits (all time) y: 14 lines of code app/schedule/BakeScheduler.scala x: 9 commits (all time) y: 59 lines of code imageCopier/src/main/scala/com/gu/imageCopier/AmiEvent.scala x: 6 commits (all time) y: 37 lines of code imageCopier/src/main/scala/com/gu/imageCopier/DeleteEvent.scala x: 6 commits (all time) y: 34 lines of code imageCopier/src/main/scala/com/gu/imageCopier/SNSMessage.scala x: 7 commits (all time) y: 11 lines of code imageCopier/src/main/scala/com/gu/imageCopier/attempt/Attempt.scala x: 6 commits (all time) y: 152 lines of code imageCopier/src/main/scala/com/gu/imageCopier/attempt/Failure.scala x: 9 commits (all time) y: 36 lines of code imageCopier/src/main/scala/com/gu/imageCopier/attempt/package.scala x: 6 commits (all time) y: 15 lines of code app/views/editRecipe.scala.html x: 26 commits (all time) y: 54 lines of code app/views/newRecipe.scala.html x: 29 commits (all time) y: 41 lines of code app/models/RoleId.scala x: 9 commits (all time) y: 7 lines of code app/views/baseImages.scala.html x: 21 commits (all time) y: 29 lines of code app/views/fragments/customisedRoles.scala.html x: 10 commits (all time) y: 21 lines of code app/views/fragments/recipeTable.scala.html x: 6 commits (all time) y: 30 lines of code app/views/fragments/usedByTable.scala.html x: 6 commits (all time) y: 16 lines of code app/views/index.scala.html x: 10 commits (all time) y: 10 lines of code app/views/layout.scala.html x: 23 commits (all time) y: 50 lines of code app/views/recipes.scala.html x: 31 commits (all time) y: 17 lines of code roles/oauth2-proxy/tasks/main.yml x: 4 commits (all time) y: 19 lines of code app/views/showBake.scala.html x: 43 commits (all time) y: 109 lines of code public/stylesheets/main.css x: 42 commits (all time) y: 94 lines of code roles/cloudwatch-hardware-monitoring-cronjob/tasks/main.yml x: 11 commits (all time) y: 28 lines of code app/views/confirmBakeDelete.scala.html x: 9 commits (all time) y: 26 lines of code app/views/confirmBaseImageDelete.scala.html x: 8 commits (all time) y: 24 lines of code app/views/confirmRecipeDelete.scala.html x: 8 commits (all time) y: 26 lines of code app/views/roles.scala.html x: 21 commits (all time) y: 115 lines of code public/javascripts/amigo.js x: 16 commits (all time) y: 43 lines of code public/javascripts/roles.js x: 8 commits (all time) y: 37 lines of code roles/java17corretto/tasks/main.yml x: 2 commits (all time) y: 22 lines of code roles/security-patches/tasks/main.yml x: 2 commits (all time) y: 23 lines of code roles/ssh-reserve-disk-space/tasks/main.yml x: 10 commits (all time) y: 45 lines of code roles/nginx-extras/tasks/main.yml x: 8 commits (all time) y: 9 lines of code roles/logstash-deb/tasks/main.yml x: 11 commits (all time) y: 25 lines of code roles/ubuntu-init/meta/main.yml x: 10 commits (all time) y: 5 lines of code roles/pip3/tasks/main.yml x: 2 commits (all time) y: 6 lines of code roles/install-ruby/tasks/main.yml x: 6 commits (all time) y: 7 lines of code roles/java8/tasks/main.yml x: 9 commits (all time) y: 24 lines of code roles/nginx+pagespeed/tasks/main.yml x: 7 commits (all time) y: 32 lines of code roles/useful-packages/tasks/main.yml x: 5 commits (all time) y: 9 lines of code roles/docker-ecr/tasks/main.yml x: 2 commits (all time) y: 49 lines of code roles/ebs-volume/tasks/main.yml x: 3 commits (all time) y: 18 lines of code roles/disk-available-cronjob/tasks/main.yml x: 8 commits (all time) y: 6 lines of code roles/aws-rds-root-cert-ca/defaults/main.yml x: 3 commits (all time) y: 2 lines of code roles/cloudwatch-hardware-monitoring-cronjob/defaults/main.yml x: 7 commits (all time) y: 8 lines of code roles/tor/tasks/main.yml x: 1 commits (all time) y: 5 lines of code roles/systemd-config/defaults/main.yml x: 1 commits (all time) y: 29 lines of code roles/systemd-config/meta/main.yml x: 1 commits (all time) y: 2 lines of code roles/systemd-config/tasks/main.yml x: 1 commits (all time) y: 10 lines of code roles/packages/tasks/main.yml x: 10 commits (all time) y: 46 lines of code roles/pip-packages/tasks/main.yml x: 4 commits (all time) y: 5 lines of code roles/language-tool-ngrams/tasks/main.yml x: 2 commits (all time) y: 10 lines of code app/views/housekeeping.scala.html x: 2 commits (all time) y: 27 lines of code app/housekeeping/HousekeepingJob.scala x: 2 commits (all time) y: 9 lines of code roles/packages/meta/main.yml x: 4 commits (all time) y: 8 lines of code roles/disable-missed-daily-tasks/tasks/main.yml x: 6 commits (all time) y: 9 lines of code roles/usage-monitoring-agent/tasks/main.yml x: 3 commits (all time) y: 5 lines of code roles/ubuntu-init/tasks/main.yml x: 12 commits (all time) y: 2 lines of code
360.0
lines of code
  min: 2.0
  average: 29.55
  25th percentile: 4.0
  median: 10.0
  75th percentile: 32.0
  max: 360.0
0 177.0
commits (all time)
min: 1.0 | average: 11.32 | 25th percentile: 2.0 | median: 6.0 | 75th percentile: 13.0 | max: 177.0

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

app/components/AppComponents.scala x: 30 contributors (all time) y: 318 lines of code app/models/packer/PackerBuilderConfig.scala x: 13 contributors (all time) y: 52 lines of code app/packer/PackerBuildConfigGenerator.scala x: 24 contributors (all time) y: 89 lines of code app/packer/PackerConfig.scala x: 8 contributors (all time) y: 8 lines of code cdk/lib/amigo-developer-policy.ts x: 1 contributors (all time) y: 219 lines of code cdk/lib/amigo.ts x: 16 contributors (all time) y: 330 lines of code .devcontainer/devenv.yaml x: 2 contributors (all time) y: 8 lines of code app/AppLoader.scala x: 9 contributors (all time) y: 64 lines of code roles/uv/defaults/main.yml x: 4 contributors (all time) y: 4 lines of code roles/uv/tasks/main.yml x: 5 contributors (all time) y: 42 lines of code roles/whisperx/tasks/main.yml x: 4 contributors (all time) y: 15 lines of code app/schedule/ScheduledBakeRunner.scala x: 11 contributors (all time) y: 57 lines of code roles/cuda-cleanup/defaults/main.yml x: 1 contributors (all time) y: 2 lines of code roles/cuda-cleanup/tasks/main.yml x: 1 contributors (all time) y: 13 lines of code .github/dependabot.yml x: 6 contributors (all time) y: 28 lines of code roles/llama.cpp/defaults/main.yml x: 1 contributors (all time) y: 3 lines of code roles/llama.cpp/tasks/main.yml x: 1 contributors (all time) y: 28 lines of code cdk/lib/image-copier-lambda.ts x: 9 contributors (all time) y: 127 lines of code app/models/BaseImage.scala x: 15 contributors (all time) y: 133 lines of code roles/whisperx/meta/main.yml x: 4 contributors (all time) y: 8 lines of code roles/aws-tools/tasks/install-cfn-tools-Ubuntu-post-focal.yml x: 4 contributors (all time) y: 21 lines of code roles/aws-efs/defaults/main.yml x: 3 contributors (all time) y: 4 lines of code roles/aws-efs/tasks/main.yml x: 3 contributors (all time) y: 29 lines of code roles/uv/meta/main.yml x: 2 contributors (all time) y: 3 lines of code roles/java25corretto/spec/java21corretto_spec.rb x: 2 contributors (all time) y: 2 lines of code roles/java25corretto/tasks/main.yml x: 2 contributors (all time) y: 22 lines of code roles/node/defaults/main.yml x: 6 contributors (all time) y: 2 lines of code roles/node/tasks/main.yml x: 9 contributors (all time) y: 66 lines of code app/event/Behaviours.scala x: 9 contributors (all time) y: 70 lines of code app/notification/SNS.scala x: 8 contributors (all time) y: 91 lines of code app/prism/RecipeUsage.scala x: 16 contributors (all time) y: 152 lines of code roles/whisper-cpp/defaults/main.yml x: 5 contributors (all time) y: 7 lines of code roles/whisper-cpp/meta/main.yml x: 2 contributors (all time) y: 9 lines of code roles/whisper-cpp/tasks/main.yml x: 5 contributors (all time) y: 31 lines of code app/housekeeping/DeleteLongRunningEC2Instances.scala x: 7 contributors (all time) y: 61 lines of code app/housekeeping/TimeOutLongRunningBakes.scala x: 9 contributors (all time) y: 52 lines of code app/housekeeping/utils/PackerEC2Client.scala x: 9 contributors (all time) y: 86 lines of code app/notification/NotificationSender.scala x: 7 contributors (all time) y: 55 lines of code app/services/AmiMetadataLookup.scala x: 8 contributors (all time) y: 34 lines of code app/controllers/BakeController.scala x: 13 contributors (all time) y: 132 lines of code app/data/BakeLogs.scala x: 10 contributors (all time) y: 49 lines of code app/data/PackageList.scala x: 9 contributors (all time) y: 84 lines of code app/notification/LambdaDistributionBucket.scala x: 7 contributors (all time) y: 98 lines of code app/packer/PackerRunner.scala x: 15 contributors (all time) y: 161 lines of code cdk/lib/image-copier-kms.ts x: 2 contributors (all time) y: 72 lines of code roles/eotk-jammy/tasks/main.yml x: 1 contributors (all time) y: 11 lines of code roles/eotk-jammy/meta/main.yml x: 1 contributors (all time) y: 5 lines of code roles/aws-tools/tasks/main.yml x: 9 contributors (all time) y: 17 lines of code app/controllers/BaseImageController.scala x: 19 contributors (all time) y: 253 lines of code app/data/BaseImages.scala x: 13 contributors (all time) y: 65 lines of code app/models/NotificationConfig.scala x: 6 contributors (all time) y: 8 lines of code app/views/editBaseImage.scala.html x: 9 contributors (all time) y: 45 lines of code app/views/newBaseImage.scala.html x: 9 contributors (all time) y: 32 lines of code app/views/showBaseImage.scala.html x: 9 contributors (all time) y: 59 lines of code imageCopier/src/main/scala/com/gu/imageCopier/AmiActions.scala x: 7 contributors (all time) y: 107 lines of code imageCopier/src/main/scala/com/gu/imageCopier/LambdaEntrypoint.scala x: 7 contributors (all time) y: 86 lines of code riff-raff.yaml x: 10 contributors (all time) y: 27 lines of code roles/aws-tools/files/aws.pub x: 3 contributors (all time) y: 28 lines of code roles/cdk-base/meta/main.yml x: 5 contributors (all time) y: 12 lines of code roles/cdk-base/tasks/main.yml x: 11 contributors (all time) y: 40 lines of code roles/friendly-hostnames/tasks/main.yml x: 6 contributors (all time) y: 6 lines of code roles/kong/defaults/main.yml x: 16 contributors (all time) y: 7 lines of code roles/kong/files/templates/error.html x: 3 contributors (all time) y: 6 lines of code roles/kong/tasks/main.yml x: 17 contributors (all time) y: 91 lines of code roles/poetry/meta/main.yml x: 4 contributors (all time) y: 11 lines of code app/controllers/Login.scala x: 7 contributors (all time) y: 70 lines of code app/controllers/RecipeController.scala x: 16 contributors (all time) y: 360 lines of code app/housekeeping/MarkOldUnusedBakesForDeletion.scala x: 7 contributors (all time) y: 56 lines of code app/notification/BakeFailedNotifier.scala x: 6 contributors (all time) y: 97 lines of code app/prism/Prism.scala x: 9 contributors (all time) y: 116 lines of code app/services/PrismData.scala x: 7 contributors (all time) y: 119 lines of code app/views/fragments/usagesColumn.scala.html x: 3 contributors (all time) y: 12 lines of code app/views/showUsage.scala.html x: 4 contributors (all time) y: 95 lines of code conf/logback-PROD.xml x: 4 contributors (all time) y: 22 lines of code roles/aws-rds-root-cert-ca/tasks/main.yml x: 4 contributors (all time) y: 17 lines of code roles/aws-rds-root-cert-ca/vars/main.yml x: 4 contributors (all time) y: 5 lines of code roles/browser-testing/tasks/main.yml x: 4 contributors (all time) y: 18 lines of code roles/cdk-base/defaults/main.yml x: 5 contributors (all time) y: 3 lines of code roles/cloud-watch-monitoring/tasks/main.yml x: 6 contributors (all time) y: 5 lines of code roles/docker-pull/tasks/main.yml x: 2 contributors (all time) y: 6 lines of code roles/docker/defaults/main.yml x: 3 contributors (all time) y: 2 lines of code roles/docker/tasks/main.yml x: 10 contributors (all time) y: 39 lines of code roles/java21corretto/spec/java21corretto_spec.rb x: 4 contributors (all time) y: 2 lines of code roles/ghostscript/tasks/main.yml x: 1 contributors (all time) y: 20 lines of code app/event/EventBus.scala x: 3 contributors (all time) y: 8 lines of code app/data/DynamoFormats.scala x: 7 contributors (all time) y: 10 lines of code app/event/BakeEvent.scala x: 6 contributors (all time) y: 56 lines of code app/models/BakeStatus.scala x: 10 contributors (all time) y: 24 lines of code app/models/CustomisedRole.scala x: 10 contributors (all time) y: 88 lines of code app/models/packer/PackerBuildConfig.scala x: 6 contributors (all time) y: 12 lines of code app/models/packer/PackerProvisionerConfig.scala x: 6 contributors (all time) y: 45 lines of code app/models/packer/PackerVariablesConfig.scala x: 6 contributors (all time) y: 24 lines of code roles/puppeteer/tasks/main.yml x: 7 contributors (all time) y: 16 lines of code roles/filebeat/tasks/main.yml x: 3 contributors (all time) y: 9 lines of code roles/neo4j/tasks/main.yml x: 4 contributors (all time) y: 9 lines of code roles/cloud-watch-agent-logs/tasks/main.yml x: 1 contributors (all time) y: 8 lines of code app/views/showRecipe.scala.html x: 11 contributors (all time) y: 201 lines of code roles/ruby-gems/tasks/main.yml x: 2 contributors (all time) y: 20 lines of code app/ansible/RoleParser.scala x: 4 contributors (all time) y: 55 lines of code app/controllers/ControllerHelpers.scala x: 5 contributors (all time) y: 24 lines of code app/controllers/HousekeepingController.scala x: 6 contributors (all time) y: 36 lines of code app/controllers/RoleController.scala x: 8 contributors (all time) y: 13 lines of code app/controllers/RootController.scala x: 5 contributors (all time) y: 16 lines of code app/data/Bakes.scala x: 12 contributors (all time) y: 136 lines of code app/data/Dynamo.scala x: 5 contributors (all time) y: 156 lines of code app/data/Recipes.scala x: 12 contributors (all time) y: 143 lines of code app/data/Roles.scala x: 8 contributors (all time) y: 66 lines of code app/housekeeping/BakeDeletion.scala x: 6 contributors (all time) y: 42 lines of code app/housekeeping/HousekeepingJobWrapper.scala x: 3 contributors (all time) y: 18 lines of code app/housekeeping/HousekeepingScheduler.scala x: 3 contributors (all time) y: 30 lines of code app/housekeeping/MarkOrphanedBakesForDeletion.scala x: 6 contributors (all time) y: 49 lines of code app/housekeeping/utils/BakesRepo.scala x: 5 contributors (all time) y: 21 lines of code app/models/Bake.scala x: 9 contributors (all time) y: 57 lines of code app/models/BakeId.scala x: 7 contributors (all time) y: 32 lines of code app/models/BakeLog.scala x: 8 contributors (all time) y: 24 lines of code app/models/BaseImageId.scala x: 5 contributors (all time) y: 10 lines of code app/models/Recipe.scala x: 8 contributors (all time) y: 58 lines of code app/models/RecipeId.scala x: 6 contributors (all time) y: 11 lines of code app/packer/ImageDetails.scala x: 4 contributors (all time) y: 24 lines of code app/packer/PackerOutputParser.scala x: 6 contributors (all time) y: 64 lines of code app/packer/PackerProcessMonitor.scala x: 3 contributors (all time) y: 53 lines of code app/schedule/BakeJob.scala x: 3 contributors (all time) y: 14 lines of code app/schedule/BakeScheduler.scala x: 4 contributors (all time) y: 59 lines of code imageCopier/src/main/scala/com/gu/imageCopier/AmiEvent.scala x: 4 contributors (all time) y: 37 lines of code imageCopier/src/main/scala/com/gu/imageCopier/DeleteEvent.scala x: 4 contributors (all time) y: 34 lines of code imageCopier/src/main/scala/com/gu/imageCopier/attempt/Attempt.scala x: 4 contributors (all time) y: 152 lines of code imageCopier/src/main/scala/com/gu/imageCopier/attempt/Failure.scala x: 4 contributors (all time) y: 36 lines of code app/views/newRecipe.scala.html x: 8 contributors (all time) y: 41 lines of code app/views/baseImages.scala.html x: 6 contributors (all time) y: 29 lines of code app/views/fragments/recipeTable.scala.html x: 2 contributors (all time) y: 30 lines of code app/views/fragments/usedByTable.scala.html x: 2 contributors (all time) y: 16 lines of code app/views/index.scala.html x: 3 contributors (all time) y: 10 lines of code app/views/layout.scala.html x: 6 contributors (all time) y: 50 lines of code roles/kibana/tasks/main.yml x: 5 contributors (all time) y: 9 lines of code roles/oauth2-proxy/tasks/main.yml x: 2 contributors (all time) y: 19 lines of code app/views/showBake.scala.html x: 10 contributors (all time) y: 109 lines of code public/stylesheets/main.css x: 13 contributors (all time) y: 94 lines of code roles/cloudwatch-hardware-monitoring-cronjob/tasks/main.yml x: 4 contributors (all time) y: 28 lines of code app/views/confirmBakeDelete.scala.html x: 2 contributors (all time) y: 26 lines of code app/views/confirmBaseImageDelete.scala.html x: 3 contributors (all time) y: 24 lines of code app/views/confirmRecipeDelete.scala.html x: 3 contributors (all time) y: 26 lines of code app/views/roles.scala.html x: 8 contributors (all time) y: 115 lines of code public/javascripts/amigo.js x: 3 contributors (all time) y: 43 lines of code public/javascripts/roles.js x: 2 contributors (all time) y: 37 lines of code roles/java17corretto/tasks/main.yml x: 1 contributors (all time) y: 22 lines of code roles/security-patches/tasks/main.yml x: 2 contributors (all time) y: 23 lines of code roles/ssh-reserve-disk-space/tasks/main.yml x: 3 contributors (all time) y: 45 lines of code roles/nginx-extras/tasks/main.yml x: 6 contributors (all time) y: 9 lines of code roles/java11/tasks/main.yml x: 2 contributors (all time) y: 14 lines of code roles/logstash-deb/tasks/main.yml x: 5 contributors (all time) y: 25 lines of code roles/aws-cloud-watch-agent/tasks/main.yml x: 3 contributors (all time) y: 22 lines of code roles/ubuntu-init/meta/main.yml x: 5 contributors (all time) y: 5 lines of code roles/nginx+pagespeed/tasks/main.yml x: 4 contributors (all time) y: 32 lines of code roles/perl-useful-packages/tasks/main.yml x: 4 contributors (all time) y: 7 lines of code roles/nest-secrets/tasks/main.yml x: 1 contributors (all time) y: 6 lines of code roles/docker-ecr/tasks/main.yml x: 1 contributors (all time) y: 49 lines of code roles/ebs-volume/tasks/main.yml x: 1 contributors (all time) y: 18 lines of code roles/docker-compose/tasks/main.yml x: 3 contributors (all time) y: 15 lines of code roles/systemd-config/defaults/main.yml x: 1 contributors (all time) y: 29 lines of code roles/packages/tasks/main.yml x: 5 contributors (all time) y: 46 lines of code app/housekeeping/HousekeepingJob.scala x: 1 contributors (all time) y: 9 lines of code roles/aws-inspector/tasks/main.yml x: 2 contributors (all time) y: 11 lines of code roles/libreoffice/tasks/main.yml x: 2 contributors (all time) y: 5 lines of code
360.0
lines of code
  min: 2.0
  average: 29.55
  25th percentile: 4.0
  median: 10.0
  75th percentile: 32.0
  max: 360.0
0 30.0
contributors (all time)
min: 1.0 | average: 4.38 | 25th percentile: 2.0 | median: 3.0 | 75th percentile: 6.0 | max: 30.0

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

app/components/AppComponents.scala x: 2 commits (30d) y: 318 lines of code app/models/packer/PackerBuilderConfig.scala x: 1 commits (30d) y: 52 lines of code app/packer/PackerBuildConfigGenerator.scala x: 1 commits (30d) y: 89 lines of code app/packer/PackerConfig.scala x: 1 commits (30d) y: 8 lines of code cdk/lib/amigo-developer-policy.ts x: 2 commits (30d) y: 219 lines of code cdk/lib/amigo.ts x: 2 commits (30d) y: 330 lines of code .devcontainer/devenv.yaml x: 3 commits (30d) y: 8 lines of code app/AppLoader.scala x: 1 commits (30d) y: 64 lines of code roles/uv/defaults/main.yml x: 2 commits (30d) y: 4 lines of code roles/uv/tasks/main.yml x: 3 commits (30d) y: 42 lines of code
330.0
lines of code
  min: 4.0
  average: 113.4
  25th percentile: 8.0
  median: 58.0
  75th percentile: 243.75
  max: 330.0
0 3.0
commits (30d)
min: 1.0 | average: 1.8 | 25th percentile: 1.0 | median: 2.0 | 75th percentile: 2.25 | max: 3.0

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

app/components/AppComponents.scala x: 1 contributors (30d) y: 318 lines of code app/models/packer/PackerBuilderConfig.scala x: 1 contributors (30d) y: 52 lines of code app/packer/PackerBuildConfigGenerator.scala x: 1 contributors (30d) y: 89 lines of code app/packer/PackerConfig.scala x: 1 contributors (30d) y: 8 lines of code cdk/lib/amigo-developer-policy.ts x: 1 contributors (30d) y: 219 lines of code cdk/lib/amigo.ts x: 1 contributors (30d) y: 330 lines of code .devcontainer/devenv.yaml x: 2 contributors (30d) y: 8 lines of code app/AppLoader.scala x: 1 contributors (30d) y: 64 lines of code roles/uv/defaults/main.yml x: 2 contributors (30d) y: 4 lines of code roles/uv/tasks/main.yml x: 2 contributors (30d) y: 42 lines of code
330.0
lines of code
  min: 4.0
  average: 113.4
  25th percentile: 8.0
  median: 58.0
  75th percentile: 243.75
  max: 330.0
0 2.0
contributors (30d)
min: 1.0 | average: 1.3 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 2.0 | max: 2.0

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

app/components/AppComponents.scala x: 2 commits (90d) y: 318 lines of code app/models/packer/PackerBuilderConfig.scala x: 1 commits (90d) y: 52 lines of code app/packer/PackerBuildConfigGenerator.scala x: 1 commits (90d) y: 89 lines of code app/packer/PackerConfig.scala x: 1 commits (90d) y: 8 lines of code cdk/lib/amigo-developer-policy.ts x: 2 commits (90d) y: 219 lines of code cdk/lib/amigo.ts x: 2 commits (90d) y: 330 lines of code .devcontainer/devenv.yaml x: 3 commits (90d) y: 8 lines of code app/AppLoader.scala x: 1 commits (90d) y: 64 lines of code roles/uv/defaults/main.yml x: 2 commits (90d) y: 4 lines of code roles/uv/tasks/main.yml x: 3 commits (90d) y: 42 lines of code roles/whisperx/tasks/main.yml x: 1 commits (90d) y: 15 lines of code
330.0
lines of code
  min: 4.0
  average: 104.45
  25th percentile: 8.0
  median: 52.0
  75th percentile: 219.0
  max: 330.0
0 3.0
commits (90d)
min: 1.0 | average: 1.73 | 25th percentile: 1.0 | median: 2.0 | 75th percentile: 2.0 | max: 3.0

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

app/components/AppComponents.scala x: 1 contributors (90d) y: 318 lines of code app/models/packer/PackerBuilderConfig.scala x: 1 contributors (90d) y: 52 lines of code app/packer/PackerBuildConfigGenerator.scala x: 1 contributors (90d) y: 89 lines of code app/packer/PackerConfig.scala x: 1 contributors (90d) y: 8 lines of code cdk/lib/amigo-developer-policy.ts x: 1 contributors (90d) y: 219 lines of code cdk/lib/amigo.ts x: 1 contributors (90d) y: 330 lines of code .devcontainer/devenv.yaml x: 2 contributors (90d) y: 8 lines of code app/AppLoader.scala x: 1 contributors (90d) y: 64 lines of code roles/uv/defaults/main.yml x: 2 contributors (90d) y: 4 lines of code roles/uv/tasks/main.yml x: 2 contributors (90d) y: 42 lines of code roles/whisperx/tasks/main.yml x: 1 contributors (90d) y: 15 lines of code
330.0
lines of code
  min: 4.0
  average: 104.45
  25th percentile: 8.0
  median: 52.0
  75th percentile: 219.0
  max: 330.0
0 2.0
contributors (90d)
min: 1.0 | average: 1.27 | 25th percentile: 1.0 | median: 1.0 | 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...