File Size Overall
  • There are 811 files with 65,265 lines of code.
    • 1 very long files (2,605 lines of code)
    • 17 long files (10,978 lines of code)
    • 57 medium size files (16,298 lines of code)
    • 94 small files (13,411 lines of code)
    • 642 very small files (21,973 lines of code)
3% | 16% | 24% | 20% | 33%
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
css55% | 0% | 0% | 8% | 36%
scala0% | 17% | 19% | 24% | 39%
java0% | 28% | 47% | 8% | 14%
js0% | 15% | 23% | 23% | 38%
html0% | 19% | 11% | 29% | 40%
ts0% | 17% | 15% | 26% | 40%
tsx0% | 0% | 55% | 28% | 15%
yaml0% | 0% | 75% | 0% | 24%
py0% | 0% | 0% | 0% | 100%
json50% | 0% | 0% | 0% | 100%
xml0% | 0% | 0% | 0% | 100%
eml0% | 0% | 0% | 0% | 100%
mjs0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
kahuna10% | 11% | 19% | 21% | 37%
scripts0% | 24% | 45% | 11% | 18%
common-lib0% | 18% | 18% | 19% | 44%
media-api0% | 35% | 22% | 22% | 19%
thrall0% | 23% | 15% | 24% | 36%
image-loader0% | 26% | 30% | 8% | 34%
image-embedder-lambda0% | 33% | 0% | 45% | 20%
usage0% | 0% | 34% | 41% | 24%
dev0% | 0% | 71% | 0% | 28%
ROOT0% | 0% | 100% | 0% | 0%
cdk0% | 0% | 77% | 0% | 22%
metadata-editor0% | 0% | 0% | 61% | 38%
cropper0% | 0% | 0% | 58% | 41%
rest-lib0% | 0% | 0% | 24% | 75%
collections0% | 0% | 0% | 39% | 60%
leases0% | 0% | 0% | 59% | 40%
auth0% | 0% | 0% | 79% | 20%
image-cache-purger0% | 0% | 0% | 0% | 100%
quarantine-status0% | 0% | 0% | 0% | 100%
image-counter-lambda0% | 0% | 0% | 0% | 100%
.github0% | 0% | 0% | 0% | 100%
.devcontainer0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
main.css
in kahuna/public/stylesheets
2605 -
gr-image-metadata.html
in kahuna/public/js/components/gr-image-metadata
960 -
SimpleConfig.java
in scripts/src/main/java/com/gu/typesafe/config/impl
940 83
results.js
in kahuna/public/js/search
730 22
MediaApi.scala
in media-api/app/controllers
711 27
ElasticSearch.scala
in thrall/app/lib/elasticsearch
678 36
Parseable.java
in scripts/src/main/java/com/gu/typesafe/config/impl
643 41
PhotographerRenamer.scala
in common-lib/src/main/scala/com/gu/mediaservice/lib/cleanup
635 1
GuardianUsageRightsConfig.scala
in common-lib/src/main/scala/com/gu/mediaservice/lib/guardian
633 -
query.js
in kahuna/public/js/search
596 37
ElasticSearch.scala
in media-api/app/lib/elasticsearch
581 24
ConfigDocumentParser.java
in scripts/src/main/java/com/gu/typesafe/config/impl
576 20
ImageLoaderController.scala
in image-loader/app/controllers
570 13
gr-image-metadata.js
in kahuna/public/js/components/gr-image-metadata
561 25
Tokenizer.java
in scripts/src/main/java/com/gu/typesafe/config/impl
558 29
freeImagesFilter.ts
in image-embedder-lambda/src/backfiller
549 -
SimpleConfigObject.java
in scripts/src/main/java/com/gu/typesafe/config/impl
542 37
SupplierProcessors.scala
in common-lib/src/main/scala/com/gu/mediaservice/lib/cleanup
515 41
UsageRights.scala
in common-lib/src/main/scala/com/gu/mediaservice/model
498 32
SimpleConfigOrigin.java
in scripts/src/main/java/com/gu/typesafe/config/impl
472 29
Uploader.scala
in image-loader/app/model
451 17
SerializedConfigValue.java
in scripts/src/main/java/com/gu/typesafe/config/impl
440 23
main.js
in kahuna/public/js
426 23
ConfigImpl.java
in scripts/src/main/java/com/gu/typesafe/config/impl
422 27
Tokens.java
in scripts/src/main/java/com/gu/typesafe/config/impl
421 72
UsageApi.scala
in usage/app/controllers
382 14
image-editor.js
in kahuna/public/js/edits
379 14
SimpleConfigList.java
in scripts/src/main/java/com/gu/typesafe/config/impl
372 35
delete-from-grid-step.tsx
in kahuna/public/js/takedown
371 -
ImageResponse.scala
in media-api/app/lib
361 18
EsScript.scala
in scripts/src/main/scala/com/gu/mediaservice/scripts
354 7
Mappings.scala
in common-lib/src/main/scala/com/gu/mediaservice/lib/elasticsearch
336 8
ConfigParser.java
in scripts/src/main/java/com/gu/typesafe/config/impl
330 4
grid-dev-core.yml
in dev/cloudformation
328 -
image-editor.html
in kahuna/public/js/edits
314 -
ConfigFactory.java
in scripts/src/main/java/com/gu/typesafe/config
293 60
controller.js
in kahuna/public/js/image
291 3
index.js
in kahuna/public/js/search
283 5
AbstractConfigValue.java
in scripts/src/main/java/com/gu/typesafe/config/impl
279 37
ConfigException.java
in scripts/src/main/java/com/gu/typesafe/config
277 54
query-suggestions.ts
in kahuna/public/js/search/structured-query
274 14
ResolveSource.java
in scripts/src/main/java/com/gu/typesafe/config/impl
269 19
leases.js
in kahuna/public/js/leases
267 3
gu-lazy-table.js
in kahuna/public/js/components/gu-lazy-table
262 8
ConfigDelayedMerge.java
in scripts/src/main/java/com/gu/typesafe/config/impl
256 17
service-config.js
in dev/script/generate-config
256 2
gr-collections-panel.js
in kahuna/public/js/components/gr-collections-panel
255 10
crops-and-usages.tsx
in kahuna/public/js/takedown
253 -
ElasticSearchModel.scala
in media-api/app/lib/elasticsearch
252 10
ThrallController.scala
in thrall/app/controllers
251 7
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
main.css
in kahuna/public/stylesheets
2605 ~15k–50k 60 ~20 ~100
MediaApi.scala
in media-api/app/controllers
711 ~3k–10k 142 ~20 ~30
ElasticSearch.scala
in media-api/app/lib/elasticsearch
581 ~3k–10k 124 ~20 ~30
results.js
in kahuna/public/js/search
730 ~5k–15k 84 ~20 ~30
query.js
in kahuna/public/js/search
596 ~3k–10k 72 ~20 ~30
Uploader.scala
in image-loader/app/model
451 ~3k–7k 68 ~20 ~20
201 ~1k–3k 96 ~20 ~10
ImageLoaderController.scala
in image-loader/app/controllers
570 ~3k–10k 33 ~30 ~20
gr-image-metadata.html
in kahuna/public/js/components/gr-image-metadata
960 ~5k–15k 15 ~30 ~30
ElasticSearch.scala
in thrall/app/lib/elasticsearch
678 ~3k–10k 21 ~30 ~20
results.html
in kahuna/public/js/search
240 ~1.5k–5k 58 ~15 ~20
SupplierProcessors.scala
in common-lib/src/main/scala/com/gu/mediaservice/lib/cleanup
515 ~3k–10k 26 ~15 ~30
S3.scala
in common-lib/src/main/scala/com/gu/mediaservice/lib/aws
194 ~1k–3k 65 ~20 ~10
DynamoDB.scala
in common-lib/src/main/scala/com/gu/mediaservice/lib/aws
220 ~1.5k–5k 56 ~30 ~7
service-config.js
in dev/script/generate-config
256 ~1.5k–5k 44 ~10 ~30
ImageResponse.scala
in media-api/app/lib
361 ~2k–7k 30 ~15 ~30
index.js
in kahuna/public/js/search
283 ~1.5k–5k 36 ~10 ~30
controller.js
in kahuna/public/js/image
291 ~2k–5k 34 ~10 ~20
ElasticSearchModel.scala
in media-api/app/lib/elasticsearch
252 ~1.5k–5k 39 ~30 ~10
ReaperController.scala
in thrall/app/controllers
202 ~1k–3k 44 ~20 ~10

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
SimpleConfig.java
in scripts/src/main/java/com/gu/typesafe/config/impl
940 83
Tokens.java
in scripts/src/main/java/com/gu/typesafe/config/impl
421 72
ConfigFactory.java
in scripts/src/main/java/com/gu/typesafe/config
293 60
ConfigException.java
in scripts/src/main/java/com/gu/typesafe/config
277 54
Parseable.java
in scripts/src/main/java/com/gu/typesafe/config/impl
643 41
SupplierProcessors.scala
in common-lib/src/main/scala/com/gu/mediaservice/lib/cleanup
515 41
query.js
in kahuna/public/js/search
596 37
AbstractConfigValue.java
in scripts/src/main/java/com/gu/typesafe/config/impl
279 37
SimpleConfigObject.java
in scripts/src/main/java/com/gu/typesafe/config/impl
542 37
ElasticSearch.scala
in thrall/app/lib/elasticsearch
678 36
SimpleConfigList.java
in scripts/src/main/java/com/gu/typesafe/config/impl
372 35
UsageRights.scala
in common-lib/src/main/scala/com/gu/mediaservice/model
498 32
QuerySyntax.scala
in media-api/app/lib/querysyntax
222 30
ConfigDelayedMergeObject.java
in scripts/src/main/java/com/gu/typesafe/config/impl
233 29
Tokenizer.java
in scripts/src/main/java/com/gu/typesafe/config/impl
558 29
SimpleConfigOrigin.java
in scripts/src/main/java/com/gu/typesafe/config/impl
472 29
ConfigImpl.java
in scripts/src/main/java/com/gu/typesafe/config/impl
422 27
DynamoDB.scala
in common-lib/src/main/scala/com/gu/mediaservice/lib/aws
220 27
MediaApi.scala
in media-api/app/controllers
711 27
gr-image-metadata.js
in kahuna/public/js/components/gr-image-metadata
561 25
ElasticSearch.scala
in media-api/app/lib/elasticsearch
581 24
main.js
in kahuna/public/js
426 23
SerializedConfigValue.java
in scripts/src/main/java/com/gu/typesafe/config/impl
440 23
results.js
in kahuna/public/js/search
730 22
UsageGroup.scala
in usage/app/model
246 22
service.js
in kahuna/public/js/edits
195 21
GridClient.scala
in common-lib/src/main/scala/com/gu/mediaservice
229 21
ConfigDocumentParser.java
in scripts/src/main/java/com/gu/typesafe/config/impl
576 20
ResolveSource.java
in scripts/src/main/java/com/gu/typesafe/config/impl
269 19
ImageMagick.scala
in common-lib/src/main/scala/com/gu/mediaservice/lib/imaging/im4jwrapper
100 19
leases.js
in kahuna/public/js/services/api
173 18
collections-api.js
in kahuna/public/js/services/api
146 18
media-api.js
in kahuna/public/js/services/api
106 18
manager.js
in kahuna/public/js/upload
132 18
ImageResponse.scala
in media-api/app/lib
361 18
gr-chips.js
in kahuna/public/js/components/gr-chips
166 17
image-accessor.js
in kahuna/public/js/services
81 17
Uploader.scala
in image-loader/app/model
451 17
ConfigDelayedMerge.java
in scripts/src/main/java/com/gu/typesafe/config/impl
256 17
Path.java
in scripts/src/main/java/com/gu/typesafe/config/impl
177 17
ConfigParseOptions.java
in scripts/src/main/java/com/gu/typesafe/config
106 16
S3.scala
in common-lib/src/main/scala/com/gu/mediaservice/lib/aws
194 16
EditsController.scala
in metadata-editor/app/controllers
182 15
ConfigConcatenation.java
in scripts/src/main/java/com/gu/typesafe/config/impl
217 15
ProviderLoader.scala
in common-lib/src/main/scala/com/gu/mediaservice/lib/config
172 15
query-suggestions.ts
in kahuna/public/js/search/structured-query
274 14
gu-date-range.js
in kahuna/public/js/components/gu-date-range
150 14
image-editor.js
in kahuna/public/js/edits
379 14
dnd-uploader.js
in kahuna/public/js/upload
188 14
UsageApi.scala
in usage/app/controllers
382 14
Files With Long Lines (Top 50)

There are 295 files with lines longer than 120 characters. In total, there are 1424 long lines.

File# lines# units# long lines
gr-image-metadata.html
in kahuna/public/js/components/gr-image-metadata
960 - 84
ElasticSearch.scala
in thrall/app/lib/elasticsearch
678 36 52
ConfigDocumentParser.java
in scripts/src/main/java/com/gu/typesafe/config/impl
576 20 46
ConfigNodeObject.java
in scripts/src/main/java/com/gu/typesafe/config/impl
241 9 38
ConfigParser.java
in scripts/src/main/java/com/gu/typesafe/config/impl
330 4 35
main.css
in kahuna/public/stylesheets
2605 - 34
ElasticSearch.scala
in media-api/app/lib/elasticsearch
581 24 32
SimpleConfig.java
in scripts/src/main/java/com/gu/typesafe/config/impl
940 83 28
MessageProcessor.scala
in thrall/app/lib/kinesis
189 12 24
ThrallMessage.scala
in common-lib/src/main/scala/com/gu/mediaservice/model
109 4 23
MediaApi.scala
in media-api/app/controllers
711 27 22
ConfigDelayedMerge.java
in scripts/src/main/java/com/gu/typesafe/config/impl
256 17 21
Parseable.java
in scripts/src/main/java/com/gu/typesafe/config/impl
643 41 19
SimpleConfigObject.java
in scripts/src/main/java/com/gu/typesafe/config/impl
542 37 19
SimpleIncluder.java
in scripts/src/main/java/com/gu/typesafe/config/impl
221 1 19
ImageLoaderController.scala
in image-loader/app/controllers
570 13 17
ConfigConcatenation.java
in scripts/src/main/java/com/gu/typesafe/config/impl
217 15 17
image.html
in kahuna/public/js/preview
177 - 16
ConfigBeanImpl.java
in scripts/src/main/java/com/gu/typesafe/config/impl
245 7 15
ImageResponse.scala
in media-api/app/lib
361 18 15
ResolveSource.java
in scripts/src/main/java/com/gu/typesafe/config/impl
269 19 14
SupplierProcessors.scala
in common-lib/src/main/scala/com/gu/mediaservice/lib/cleanup
515 41 13
SimpleConfigList.java
in scripts/src/main/java/com/gu/typesafe/config/impl
372 35 12
ConfigImpl.java
in scripts/src/main/java/com/gu/typesafe/config/impl
422 27 12
results.html
in kahuna/public/js/search
240 - 11
FileMetadataReader.scala
in image-loader/app/lib/imaging
222 13 11
Syndication.scala
in metadata-editor/app/lib
142 14 11
UsageRights.scala
in common-lib/src/main/scala/com/gu/mediaservice/model
498 32 11
UsageRightsConfig.scala
in common-lib/src/main/scala/com/gu/mediaservice/lib/config
176 8 11
ProviderLoader.scala
in common-lib/src/main/scala/com/gu/mediaservice/lib/config
172 15 11
required-metadata-editor.html
in kahuna/public/js/upload/jobs
172 - 10
KahunaConfig.scala
in kahuna/app/lib
76 - 9
ResolveContext.java
in scripts/src/main/java/com/gu/typesafe/config/impl
177 13 9
ConfigReference.java
in scripts/src/main/java/com/gu/typesafe/config/impl
119 12 9
GridClient.scala
in common-lib/src/main/scala/com/gu/mediaservice
229 21 9
ImageIngestOperations.scala
in common-lib/src/main/scala/com/gu/mediaservice/lib
106 7 9
results.js
in kahuna/public/js/search
730 22 8
global.html
in kahuna/public/js/errors
51 - 8
image-editor.html
in kahuna/public/js/edits
314 - 8
155 8 8
ThrallMigrationClient.scala
in thrall/app/lib/elasticsearch
164 12 8
ThrallController.scala
in thrall/app/controllers
251 7 8
ConfigDelayedMergeObject.java
in scripts/src/main/java/com/gu/typesafe/config/impl
233 29 8
SimpleConfigOrigin.java
in scripts/src/main/java/com/gu/typesafe/config/impl
472 29 8
EnactS3Changes.scala
in scripts/src/main/scala/com/gu/mediaservice/scripts
175 7 8
ProposeS3Changes.scala
in scripts/src/main/scala/com/gu/mediaservice/scripts
219 8 8
QueryBuilder.scala
in media-api/app/lib/elasticsearch
188 6 8
gr-permissions-filter.tsx
in kahuna/public/js/components/gr-permissions-filter
237 - 7
gr-image-metadata.js
in kahuna/public/js/components/gr-image-metadata
561 25 7
ImageLoaderComponents.scala
in image-loader/app
45 - 7
Correlations

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

kahuna/public/js/components/gr-my-uploads/gr-my-uploads.tsx x: 21 commits (all time) y: 74 lines of code kahuna/public/js/components/gr-permissions-filter/gr-permissions-filter.tsx x: 42 commits (all time) y: 237 lines of code kahuna/public/js/takedown/crops-and-usages.tsx x: 7 commits (all time) y: 253 lines of code kahuna/public/js/takedown/delete-from-grid-step.tsx x: 22 commits (all time) y: 371 lines of code kahuna/public/js/search/index.js x: 282 commits (all time) y: 283 lines of code kahuna/public/js/search/query.js x: 300 commits (all time) y: 596 lines of code cdk/lib/image-cache-purger.ts x: 7 commits (all time) y: 54 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/DateTimeUtils.scala x: 21 commits (all time) y: 53 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/cleanup/SupplierProcessors.scala x: 337 commits (all time) y: 515 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/config/CommonConfig.scala x: 193 commits (all time) y: 110 lines of code dev/oidc-provider/app.js x: 29 commits (all time) y: 19 lines of code dev/script/generate-config/service-config.js x: 139 commits (all time) y: 256 lines of code image-cache-purger/src/main/scala/com/gu/mediaservice/FastlyApiKeyProvider.scala x: 7 commits (all time) y: 35 lines of code image-cache-purger/src/main/scala/com/gu/mediaservice/FastlyPurger.scala x: 7 commits (all time) y: 43 lines of code image-cache-purger/src/main/scala/com/gu/mediaservice/ImageCachePurger.scala x: 7 commits (all time) y: 62 lines of code kahuna/app/KahunaComponents.scala x: 82 commits (all time) y: 63 lines of code kahuna/app/lib/KahunaConfig.scala x: 153 commits (all time) y: 76 lines of code kahuna/app/views/main.scala.html x: 286 commits (all time) y: 131 lines of code kahuna/public/js/common/user-actions.html x: 66 commits (all time) y: 47 lines of code kahuna/public/js/common/user-actions.js x: 33 commits (all time) y: 44 lines of code kahuna/public/js/components/gr-top-bar/gr-top-bar.js x: 35 commits (all time) y: 37 lines of code kahuna/public/js/edits/image-editor.html x: 269 commits (all time) y: 314 lines of code kahuna/public/js/image/controller.js x: 362 commits (all time) y: 291 lines of code kahuna/public/js/image/view.html x: 502 commits (all time) y: 195 lines of code kahuna/public/js/main.js x: 287 commits (all time) y: 426 lines of code kahuna/public/js/search/results.html x: 416 commits (all time) y: 240 lines of code kahuna/public/js/search/results.js x: 473 commits (all time) y: 730 lines of code kahuna/public/js/services/telemetry.ts x: 26 commits (all time) y: 83 lines of code kahuna/public/js/takedown/controller.ts x: 8 commits (all time) y: 26 lines of code kahuna/public/js/takedown/delete-from-content-step.tsx x: 9 commits (all time) y: 218 lines of code kahuna/public/js/takedown/index.ts x: 10 commits (all time) y: 94 lines of code kahuna/public/js/takedown/takedown-context.tsx x: 9 commits (all time) y: 204 lines of code kahuna/public/js/takedown/takedown-page.tsx x: 12 commits (all time) y: 120 lines of code kahuna/public/js/takedown/takedown-step.tsx x: 5 commits (all time) y: 98 lines of code kahuna/public/js/takedown/view.html x: 8 commits (all time) y: 8 lines of code kahuna/public/js/types/api.ts x: 4 commits (all time) y: 5 lines of code kahuna/public/js/types/image.ts x: 14 commits (all time) y: 86 lines of code kahuna/public/js/upload/controller.js x: 91 commits (all time) y: 59 lines of code kahuna/public/js/upload/dnd-uploader.html x: 17 commits (all time) y: 11 lines of code kahuna/public/js/upload/jobs/required-metadata-editor.html x: 118 commits (all time) y: 172 lines of code kahuna/public/js/upload/jobs/upload-jobs.js x: 179 commits (all time) y: 184 lines of code kahuna/public/js/upload/prompt/prompt.html x: 30 commits (all time) y: 10 lines of code kahuna/public/js/upload/prompt/prompt.js x: 28 commits (all time) y: 22 lines of code kahuna/public/js/util/default-non-free-filter.js x: 4 commits (all time) y: 11 lines of code kahuna/public/js/window.ts x: 38 commits (all time) y: 53 lines of code kahuna/public/stylesheets/main.css x: 1209 commits (all time) y: 2605 lines of code media-api/app/MediaApiComponents.scala x: 151 commits (all time) y: 46 lines of code media-api/app/controllers/MediaApi.scala x: 844 commits (all time) y: 711 lines of code media-api/app/controllers/UsageController.scala x: 54 commits (all time) y: 111 lines of code media-api/app/lib/ContentApi.scala x: 4 commits (all time) y: 56 lines of code media-api/app/lib/ImageResponse.scala x: 336 commits (all time) y: 361 lines of code media-api/app/lib/MediaApiConfig.scala x: 143 commits (all time) y: 76 lines of code media-api/app/lib/elasticsearch/ElasticSearch.scala x: 532 commits (all time) y: 581 lines of code riff-raff.yaml x: 96 commits (all time) y: 203 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/EyeVine.scala x: 6 commits (all time) y: 63 lines of code usage/app/controllers/UsageApi.scala x: 146 commits (all time) y: 382 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/config/FieldAlias.scala x: 19 commits (all time) y: 39 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/elasticsearch/MappingTest.scala x: 50 commits (all time) y: 248 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/FileMetadata.scala x: 56 commits (all time) y: 67 lines of code image-loader/app/lib/imaging/C2PADetector.scala x: 6 commits (all time) y: 48 lines of code image-loader/app/lib/imaging/FileMetadataReader.scala x: 129 commits (all time) y: 222 lines of code kahuna/public/js/components/gr-collections-panel/gr-collections-panel.js x: 155 commits (all time) y: 255 lines of code kahuna/public/js/components/gr-display-crops/gr-display-crops.css x: 11 commits (all time) y: 14 lines of code kahuna/public/js/components/gr-display-crops/gr-display-crops.html x: 24 commits (all time) y: 28 lines of code kahuna/public/js/components/gr-image-metadata/gr-image-metadata.html x: 238 commits (all time) y: 960 lines of code kahuna/public/js/components/gr-image-metadata/gr-image-metadata.js x: 146 commits (all time) y: 561 lines of code kahuna/public/js/components/gr-photoshoot/gr-photoshoot.js x: 19 commits (all time) y: 88 lines of code kahuna/public/js/components/gr-preset-labels/gr-preset-labels.js x: 37 commits (all time) y: 58 lines of code kahuna/public/js/components/gr-sort-control/base-sort-control.tsx x: 13 commits (all time) y: 189 lines of code kahuna/public/js/components/gr-sort-control/gr-extended-sort-control.tsx x: 10 commits (all time) y: 105 lines of code kahuna/public/js/components/gr-sort-control/gr-sort-control.tsx x: 45 commits (all time) y: 88 lines of code kahuna/public/js/components/gu-date-range/gu-date-range.js x: 50 commits (all time) y: 150 lines of code kahuna/public/js/edits/image-editor.js x: 139 commits (all time) y: 379 lines of code kahuna/public/js/edits/list-editor.js x: 28 commits (all time) y: 182 lines of code kahuna/public/js/preview/image.js x: 195 commits (all time) y: 161 lines of code kahuna/public/js/search/query-filter.js x: 53 commits (all time) y: 71 lines of code kahuna/public/js/search/query.html x: 217 commits (all time) y: 85 lines of code kahuna/public/js/upload/view.html x: 135 commits (all time) y: 26 lines of code media-api/app/lib/elasticsearch/QueryBuilder.scala x: 77 commits (all time) y: 188 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/AlamyCleanUp.scala x: 19 commits (all time) y: 97 lines of code .devcontainer/devenv.yaml x: 14 commits (all time) y: 28 lines of code collections/app/store/CollectionsStore.scala x: 55 commits (all time) y: 55 lines of code collections/app/store/ImageCollectionsStore.scala x: 14 commits (all time) y: 43 lines of code common-lib/src/main/scala/com/gu/mediaservice/GridClient.scala x: 53 commits (all time) y: 229 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/AttributeValueConverterProvider.scala x: 5 commits (all time) y: 15 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/BaseStore.scala x: 47 commits (all time) y: 51 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/ImageIngestOperations.scala x: 76 commits (all time) y: 106 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/S3ImageStorage.scala x: 77 commits (all time) y: 44 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/VectorUtils.scala x: 13 commits (all time) y: 40 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/argo/model/CollectionResponse.scala x: 17 commits (all time) y: 47 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/auth/KeyStore.scala x: 43 commits (all time) y: 20 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/AwsClientBuilderUtils.scala x: 19 commits (all time) y: 21 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/Bedrock.scala x: 35 commits (all time) y: 79 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/DynamoDB.scala x: 182 commits (all time) y: 220 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/EC2MetadataUtils.scala x: 2 commits (all time) y: 8 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/Embedder.scala x: 55 commits (all time) y: 27 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/Kinesis.scala x: 58 commits (all time) y: 47 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/S3.scala x: 202 commits (all time) y: 194 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/S3Vectors.scala x: 63 commits (all time) y: 103 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/SNS.scala x: 25 commits (all time) y: 13 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/SimpleSqsMessageConsumer.scala x: 44 commits (all time) y: 50 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/SqsHelpers.scala x: 37 commits (all time) y: 16 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/SqsViaSnsMessageConsumer.scala x: 24 commits (all time) y: 76 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/cleanup/PhotographerRenamer.scala x: 112 commits (all time) y: 635 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/dynamo/DynamoValue.scala x: 6 commits (all time) y: 27 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/guardian/GuardianUsageRightsConfig.scala x: 71 commits (all time) y: 633 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/logging/LogConfig.scala x: 16 commits (all time) y: 103 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/metrics/CloudWatchMetrics.scala x: 48 commits (all time) y: 134 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/usage/ItemToMediaUsage.scala x: 34 commits (all time) y: 109 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/UsageRights.scala x: 251 commits (all time) y: 498 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/usage/DigitalUsageMetadata.scala x: 20 commits (all time) y: 28 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/usage/DownloadUsageMetadata.scala x: 7 commits (all time) y: 17 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/usage/PrintUsageMetadata.scala x: 43 commits (all time) y: 73 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/usage/SyndicationUsageMetadata.scala x: 15 commits (all time) y: 18 lines of code image-loader/app/ImageLoaderComponents.scala x: 111 commits (all time) y: 45 lines of code image-loader/app/controllers/ImageLoaderController.scala x: 300 commits (all time) y: 570 lines of code image-loader/app/lib/ImageLoaderStore.scala x: 71 commits (all time) y: 72 lines of code image-loader/app/lib/UploadStatusTable.scala x: 25 commits (all time) y: 49 lines of code image-loader/app/model/Projector.scala x: 102 commits (all time) y: 187 lines of code image-loader/app/model/S3IngestObject.scala x: 27 commits (all time) y: 36 lines of code image-loader/app/model/Uploader.scala x: 153 commits (all time) y: 451 lines of code kahuna/app/controllers/KahunaController.scala x: 101 commits (all time) y: 85 lines of code kahuna/app/lib/FeatureSwitch.scala x: 36 commits (all time) y: 44 lines of code kahuna/public/js/components/gr-archiver/gr-archiver.js x: 58 commits (all time) y: 144 lines of code kahuna/public/js/components/gr-collection-overlay/gr-collection-overlay.css x: 16 commits (all time) y: 54 lines of code kahuna/public/js/components/gr-confirm-delete/gr-confirm-delete.css x: 33 commits (all time) y: 23 lines of code kahuna/public/js/components/gr-downloader/gr-downloader.html x: 51 commits (all time) y: 57 lines of code kahuna/public/js/components/gr-downloader/gr-downloader.js x: 53 commits (all time) y: 114 lines of code kahuna/public/js/components/gr-image-usage/gr-image-usage-list.html x: 48 commits (all time) y: 33 lines of code kahuna/public/js/components/gr-image-usage/gr-image-usage.js x: 53 commits (all time) y: 135 lines of code kahuna/public/js/components/gr-more-like-this/gr-more-like-this.js x: 10 commits (all time) y: 28 lines of code kahuna/public/js/components/gr-sort-control/gr-sort-control.css x: 16 commits (all time) y: 142 lines of code kahuna/public/js/components/gr-top-bar/gr-top-bar.css x: 43 commits (all time) y: 39 lines of code kahuna/public/js/components/gr-undelete-image/gr-un-delete-image.js x: 18 commits (all time) y: 48 lines of code kahuna/public/js/components/gr-usagerights-summary/gr-usagerights-summary.tsx x: 7 commits (all time) y: 114 lines of code kahuna/public/js/crop/controller.js x: 171 commits (all time) y: 218 lines of code kahuna/public/js/crop/index.js x: 57 commits (all time) y: 40 lines of code kahuna/public/js/crop/view.html x: 207 commits (all time) y: 135 lines of code kahuna/public/js/directives/ui-crop-box/ui-crop-box.js x: 32 commits (all time) y: 99 lines of code kahuna/public/js/services/image-list.js x: 21 commits (all time) y: 64 lines of code kahuna/public/js/services/image/usages.js x: 53 commits (all time) y: 91 lines of code kahuna/public/js/upload/controller.css x: 5 commits (all time) y: 5 lines of code leases/app/lib/LeaseStore.scala x: 25 commits (all time) y: 36 lines of code media-api/app/lib/UsageStore.scala x: 60 commits (all time) y: 188 lines of code media-api/app/lib/elasticsearch/ElasticSearchModel.scala x: 76 commits (all time) y: 252 lines of code media-api/app/lib/elasticsearch/HybridResult.scala x: 13 commits (all time) y: 112 lines of code metadata-editor/app/controllers/EditsController.scala x: 207 commits (all time) y: 182 lines of code metadata-editor/app/controllers/SyndicationController.scala x: 9 commits (all time) y: 58 lines of code metadata-editor/app/lib/Syndication.scala x: 52 commits (all time) y: 142 lines of code rest-lib/src/main/scala/com/gu/mediaservice/lib/guardian/auth/PandaAuthenticationProvider.scala x: 36 commits (all time) y: 135 lines of code rest-lib/src/main/scala/com/gu/mediaservice/lib/guardian/auth/Permissions.scala x: 10 commits (all time) y: 12 lines of code rest-lib/src/main/scala/com/gu/mediaservice/lib/guardian/auth/PermissionsAuthorisationProvider.scala x: 34 commits (all time) y: 54 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/BulkRemoveFromCollection.scala x: 3 commits (all time) y: 40 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/EnactS3Changes.scala x: 15 commits (all time) y: 175 lines of code thrall/app/ThrallComponents.scala x: 188 commits (all time) y: 78 lines of code thrall/app/controllers/ReaperController.scala x: 92 commits (all time) y: 202 lines of code thrall/app/controllers/ThrallController.scala x: 79 commits (all time) y: 251 lines of code thrall/app/lib/SyncChecker.scala x: 22 commits (all time) y: 112 lines of code thrall/app/lib/ThrallConfig.scala x: 95 commits (all time) y: 69 lines of code thrall/app/lib/elasticsearch/GoodToGoCheck.scala x: 24 commits (all time) y: 88 lines of code thrall/app/views/index.scala.html x: 52 commits (all time) y: 132 lines of code thrall/app/views/migrationFailures.scala.html x: 30 commits (all time) y: 90 lines of code thrall/app/views/restoreFromReplica.scala.html x: 13 commits (all time) y: 30 lines of code thrall/app/views/upsertProject.scala.html x: 16 commits (all time) y: 32 lines of code usage/app/lib/ContentApis.scala x: 19 commits (all time) y: 57 lines of code usage/app/lib/UsageConfig.scala x: 51 commits (all time) y: 64 lines of code usage/app/model/UsageRecord.scala x: 64 commits (all time) y: 132 lines of code usage/app/model/UsageTable.scala x: 79 commits (all time) y: 144 lines of code cropper/app/lib/CropStore.scala x: 45 commits (all time) y: 67 lines of code kahuna/public/js/services/api/media-api.js x: 148 commits (all time) y: 106 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/config/CommonConfigWithElastic.scala x: 26 commits (all time) y: 27 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/elasticsearch/ElasticSearchConfig.scala x: 19 commits (all time) y: 2 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/elasticsearch/Mappings.scala x: 319 commits (all time) y: 336 lines of code kahuna/public/js/components/gr-chips/gr-chips.js x: 29 commits (all time) y: 166 lines of code media-api/app/controllers/ConfigurationController.scala x: 9 commits (all time) y: 7 lines of code media-api/app/lib/querysyntax/QuerySyntax.scala x: 147 commits (all time) y: 222 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/EsScript.scala x: 96 commits (all time) y: 354 lines of code thrall/app/lib/elasticsearch/ElasticSearch.scala x: 162 commits (all time) y: 678 lines of code kahuna/public/js/search/structured-query/syntax.ts x: 14 commits (all time) y: 96 lines of code auth/app/auth/AuthController.scala x: 50 commits (all time) y: 123 lines of code collections/app/controllers/ImageCollectionsController.scala x: 75 commits (all time) y: 59 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/ImageStorage.scala x: 40 commits (all time) y: 29 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/argo/ArgoHelpers.scala x: 72 commits (all time) y: 57 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/cleanup/RedundantTokenRemover.scala x: 41 commits (all time) y: 55 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/elasticsearch/PersistedQueries.scala x: 22 commits (all time) y: 39 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/Embedding.scala x: 17 commits (all time) y: 22 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/Image.scala x: 90 commits (all time) y: 148 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/ThrallMessage.scala x: 58 commits (all time) y: 109 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/usage/MediaUsage.scala x: 34 commits (all time) y: 63 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/usage/Usage.scala x: 29 commits (all time) y: 55 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/usage/UsageReferenceType.scala x: 15 commits (all time) y: 33 lines of code dev/cloudformation/grid-dev-core.yml x: 51 commits (all time) y: 328 lines of code image-embedder-lambda/src/backfiller/elasticSearch.ts x: 17 commits (all time) y: 69 lines of code image-embedder-lambda/src/backfiller/embedderQueue.ts x: 9 commits (all time) y: 40 lines of code image-embedder-lambda/src/backfiller/freeImagesFilter.ts x: 5 commits (all time) y: 549 lines of code image-embedder-lambda/src/embedder/constants.ts x: 13 commits (all time) y: 3 lines of code image-embedder-lambda/src/embedder/embedder.ts x: 23 commits (all time) y: 177 lines of code image-embedder-lambda/src/embedder/imageEmbedder.ts x: 14 commits (all time) y: 63 lines of code image-embedder-lambda/src/embedder/imageResolver.ts x: 16 commits (all time) y: 155 lines of code image-embedder-lambda/src/embedder/localRun.ts x: 17 commits (all time) y: 191 lines of code image-embedder-lambda/src/embedder/thrallEventPublisher.ts x: 17 commits (all time) y: 114 lines of code image-loader/app/lib/ImageLoaderConfig.scala x: 75 commits (all time) y: 33 lines of code image-loader/app/model/upload/OptimiseOps.scala x: 29 commits (all time) y: 45 lines of code kahuna/public/js/components/gr-archiver-status/gr-archiver-status.js x: 28 commits (all time) y: 69 lines of code kahuna/public/js/components/gr-cql-input/syntax.ts x: 11 commits (all time) y: 83 lines of code kahuna/public/js/components/gr-icon/gr-icon.css x: 27 commits (all time) y: 58 lines of code kahuna/public/js/components/gr-more-like-this/gr-more-like-this.css x: 5 commits (all time) y: 33 lines of code kahuna/public/js/image/service.js x: 97 commits (all time) y: 42 lines of code kahuna/public/js/preview/image.html x: 297 commits (all time) y: 177 lines of code kahuna/public/js/search/structured-query/query-suggestions.ts x: 11 commits (all time) y: 274 lines of code kahuna/public/js/services/image-logic.js x: 52 commits (all time) y: 115 lines of code media-api/app/lib/ImageExtras.scala x: 57 commits (all time) y: 79 lines of code media-api/app/lib/MediaApiMetrics.scala x: 39 commits (all time) y: 31 lines of code media-api/app/lib/elasticsearch/SearchFilters.scala x: 202 commits (all time) y: 64 lines of code thrall/app/lib/kinesis/MessageProcessor.scala x: 164 commits (all time) y: 189 lines of code usage/app/model/UsageGroup.scala x: 97 commits (all time) y: 246 lines of code collections/app/controllers/CollectionsController.scala x: 94 commits (all time) y: 169 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/collections/CollectionsManager.scala x: 73 commits (all time) y: 45 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/Collection.scala x: 66 commits (all time) y: 30 lines of code kahuna/public/js/components/gr-chips/gr-text-chip.html x: 20 commits (all time) y: 10 lines of code kahuna/public/js/search/structured-query/structured-query.js x: 53 commits (all time) y: 96 lines of code kahuna/public/js/sentry/sentry.js x: 25 commits (all time) y: 55 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/elasticsearch/filters.scala x: 15 commits (all time) y: 59 lines of code kahuna/public/js/components/gr-notifications-banner/gr-notifications-banner.tsx x: 16 commits (all time) y: 228 lines of code kahuna/public/js/components/gr-panel-button/gr-panel-button.js x: 34 commits (all time) y: 75 lines of code kahuna/public/js/components/gr-panels/gr-panels.js x: 47 commits (all time) y: 91 lines of code kahuna/public/js/search/syntax/syntax.html x: 58 commits (all time) y: 178 lines of code kahuna/public/js/leases/leases.html x: 69 commits (all time) y: 150 lines of code kahuna/public/js/leases/leases.js x: 74 commits (all time) y: 267 lines of code media-api/app/controllers/SuggestionController.scala x: 62 commits (all time) y: 39 lines of code rest-lib/src/main/scala/com/gu/mediaservice/lib/play/RequestLoggingFilter.scala x: 18 commits (all time) y: 77 lines of code rest-lib/src/main/scala/com/gu/mediaservice/lib/play/UnknownMethodParsingErrorHandler.scala x: 3 commits (all time) y: 23 lines of code kahuna/public/js/leases/leases.css x: 24 commits (all time) y: 140 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/imaging/ImageOperations.scala x: 113 commits (all time) y: 247 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/imaging/im4jwrapper/ImageMagick.scala x: 46 commits (all time) y: 100 lines of code cropper/app/controllers/CropperController.scala x: 56 commits (all time) y: 185 lines of code cropper/app/lib/CropSpecMetadata.scala x: 9 commits (all time) y: 42 lines of code cropper/app/lib/Crops.scala x: 132 commits (all time) y: 118 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/logging/Stopwatch.scala x: 24 commits (all time) y: 55 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/metadata/ImageMetadataConverter.scala x: 97 commits (all time) y: 141 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/cleanup/MetadataCleaner.scala x: 50 commits (all time) y: 27 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/config/UsageRightsConfig.scala x: 114 commits (all time) y: 176 lines of code kahuna/public/js/components/gr-collections-panel/gr-collections-panel-node.html x: 97 commits (all time) y: 79 lines of code metadata-editor/app/model/UsageRightsProperty.scala x: 106 commits (all time) y: 113 lines of code kahuna/public/js/util/crop.js x: 32 commits (all time) y: 61 lines of code kahuna/public/js/directives/ui-crop-box/cropper-override.css x: 26 commits (all time) y: 77 lines of code common-lib/src/main/resources/logback.xml x: 31 commits (all time) y: 40 lines of code usage/app/lib/CrierStreamReader.scala x: 21 commits (all time) y: 111 lines of code usage/app/lib/CrierEventProcessor.scala x: 33 commits (all time) y: 155 lines of code kahuna/public/js/image/index.js x: 66 commits (all time) y: 52 lines of code media-api/app/lib/usagerights/CostCalculator.scala x: 65 commits (all time) y: 42 lines of code scripts/src/main/scala/com/gu/mediaservice/lib/JsonValueCodecJsValue.scala x: 9 commits (all time) y: 88 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/BackfillEditLastModified.scala x: 9 commits (all time) y: 165 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/BucketMetadata.scala x: 11 commits (all time) y: 55 lines of code kahuna/public/js/usage-rights/usage-rights-editor.js x: 166 commits (all time) y: 220 lines of code metadata-editor/app/controllers/EditsApi.scala x: 133 commits (all time) y: 81 lines of code metadata-editor/app/lib/EditsConfig.scala x: 31 commits (all time) y: 17 lines of code auth/app/auth/AuthConfig.scala x: 25 commits (all time) y: 6 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/config/GridConfigResources.scala x: 14 commits (all time) y: 5 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/config/ProviderLoader.scala x: 12 commits (all time) y: 172 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/play/RequestMetricFilter.scala x: 11 commits (all time) y: 43 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/SyndicationRights.scala x: 30 commits (all time) y: 75 lines of code kahuna/public/js/components/gr-delete-image/gr-delete-image.js x: 50 commits (all time) y: 53 lines of code kahuna/public/js/components/gr-info-panel/gr-info-panel.html x: 49 commits (all time) y: 49 lines of code kahuna/public/js/upload/manager.js x: 70 commits (all time) y: 132 lines of code leases/app/controllers/MediaLeaseController.scala x: 38 commits (all time) y: 136 lines of code leases/app/lib/LeaseNotifier.scala x: 51 commits (all time) y: 26 lines of code leases/app/lib/LeasesConfig.scala x: 22 commits (all time) y: 15 lines of code metadata-editor/app/MetadataEditorComponents.scala x: 38 commits (all time) y: 23 lines of code metadata-editor/app/lib/MetadataEditorMetrics.scala x: 18 commits (all time) y: 13 lines of code thrall/app/lib/ThrallStreamProcessor.scala x: 71 commits (all time) y: 99 lines of code thrall/app/lib/elasticsearch/ThrallMigrationClient.scala x: 48 commits (all time) y: 164 lines of code thrall/app/lib/kinesis/ThrallEventConsumer.scala x: 118 commits (all time) y: 117 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/ImageMetadata.scala x: 57 commits (all time) y: 97 lines of code kahuna/public/js/components/gr-feature-switch-panel/gr-feature-switch-panel.module.css x: 7 commits (all time) y: 85 lines of code usage/app/UsageComponents.scala x: 33 commits (all time) y: 33 lines of code kahuna/public/js/components/gr-image-usage-photosales/gr-image-usage-photosales.css x: 2 commits (all time) y: 17 lines of code kahuna/public/js/components/gr-image-usage-photosales/gr-image-usage-photosales.tsx x: 2 commits (all time) y: 52 lines of code kahuna/public/js/usage-rights/usage-rights-editor.html x: 149 commits (all time) y: 199 lines of code kahuna/public/js/components/gr-confirmation-modal/gr-confirmation-modal.tsx x: 5 commits (all time) y: 121 lines of code kahuna/public/js/components/gr-confirmation-modal/gr-confirmation-modal.css x: 2 commits (all time) y: 75 lines of code kahuna/public/js/components/gr-permissions-filter/gr-permissions-filter-config.ts x: 3 commits (all time) y: 85 lines of code kahuna/public/js/components/gr-permissions-filter/gr-permissions-filter.css x: 6 commits (all time) y: 77 lines of code kahuna/public/js/search/view.html x: 101 commits (all time) y: 37 lines of code kahuna/public/js/components/gr-notifications-banner/gr-notifications-banner.css x: 4 commits (all time) y: 78 lines of code kahuna/public/js/services/api/loader.js x: 41 commits (all time) y: 40 lines of code kahuna/public/js/upload/dnd-uploader.js x: 89 commits (all time) y: 188 lines of code kahuna/public/js/components/gr-add-keyword/gr-add-keyword.html x: 3 commits (all time) y: 48 lines of code kahuna/public/js/components/gr-add-keyword/gr-add-keyword.js x: 4 commits (all time) y: 105 lines of code media-api/app/lib/elasticsearch/SyndicationFilter.scala x: 33 commits (all time) y: 113 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/config/Services.scala x: 82 commits (all time) y: 78 lines of code kahuna/public/js/edits/service.js x: 142 commits (all time) y: 195 lines of code kahuna/public/js/metadata-templates/metadata-templates.js x: 18 commits (all time) y: 189 lines of code kahuna/public/js/util/batch-tracking.js x: 52 commits (all time) y: 39 lines of code kahuna/public/js/components/gr-export-original-image/gr-export-original-image.js x: 21 commits (all time) y: 49 lines of code kahuna/public/js/forms/datalist.js x: 74 commits (all time) y: 131 lines of code kahuna/public/js/upload/recent/recent-uploads.js x: 13 commits (all time) y: 71 lines of code kahuna/public/js/services/api/leases.js x: 28 commits (all time) y: 173 lines of code kahuna/public/js/upload/jobs/upload-jobs.html x: 118 commits (all time) y: 43 lines of code kahuna/public/js/errors/global.html x: 59 commits (all time) y: 51 lines of code usage/app/lib/UsageRecorder.scala x: 110 commits (all time) y: 118 lines of code kahuna/public/js/edits/list-editor.css x: 15 commits (all time) y: 103 lines of code common-lib/src/main/scala/com/gu/mediaservice/ImageDataMerger.scala x: 24 commits (all time) y: 68 lines of code kahuna/public/js/components/gr-chips/gr-chips.css x: 14 commits (all time) y: 77 lines of code kahuna/public/js/components/gr-crop-image/gr-crop-image.html x: 38 commits (all time) y: 18 lines of code dev/config/usages.eml x: 2 commits (all time) y: 25 lines of code kahuna/public/js/components/gr-add-label/gr-add-label.html x: 55 commits (all time) y: 48 lines of code kahuna/public/js/components/gr-confirm-delete/gr-confirm-delete.js x: 36 commits (all time) y: 29 lines of code kahuna/public/js/services/image-accessor.js x: 44 commits (all time) y: 81 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/EsImageMetadata.scala x: 6 commits (all time) y: 137 lines of code thrall/app/controllers/HealthCheck.scala x: 54 commits (all time) y: 29 lines of code kahuna/public/js/util/async.js x: 77 commits (all time) y: 73 lines of code auth/app/auth/AuthComponents.scala x: 29 commits (all time) y: 23 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/ProposeS3Changes.scala x: 3 commits (all time) y: 219 lines of code quarantine-status/stacks/lambda.yml x: 4 commits (all time) y: 100 lines of code rest-lib/src/main/scala/com/gu/mediaservice/lib/auth/provider/ApiKeyAuthenticationProvider.scala x: 2 commits (all time) y: 50 lines of code kahuna/public/js/components/gu-lazy-table/gu-lazy-table.js x: 66 commits (all time) y: 262 lines of code kahuna/public/js/services/label.js x: 38 commits (all time) y: 86 lines of code kahuna/public/js/components/gr-add-label/gr-add-label.js x: 49 commits (all time) y: 77 lines of code kahuna/public/js/services/api/collections-api.js x: 74 commits (all time) y: 146 lines of code scripts/src/main/java/com/gu/typesafe/config/Config.java x: 2 commits (all time) y: 66 lines of code scripts/src/main/java/com/gu/typesafe/config/ConfigException.java x: 2 commits (all time) y: 277 lines of code scripts/src/main/java/com/gu/typesafe/config/ConfigFactory.java x: 2 commits (all time) y: 293 lines of code scripts/src/main/java/com/gu/typesafe/config/ConfigParseOptions.java x: 2 commits (all time) y: 106 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/AbstractConfigObject.java x: 2 commits (all time) y: 143 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/AbstractConfigValue.java x: 3 commits (all time) y: 279 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/ConfigBeanImpl.java x: 2 commits (all time) y: 245 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/ConfigBoolean.java x: 2 commits (all time) y: 32 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/ConfigConcatenation.java x: 2 commits (all time) y: 217 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/ConfigDelayedMerge.java x: 2 commits (all time) y: 256 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/ConfigDelayedMergeObject.java x: 2 commits (all time) y: 233 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/ConfigDocumentParser.java x: 2 commits (all time) y: 576 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/ConfigImpl.java x: 2 commits (all time) y: 422 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/ConfigParser.java x: 2 commits (all time) y: 330 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/ConfigReference.java x: 2 commits (all time) y: 119 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/DefaultTransformer.java x: 2 commits (all time) y: 94 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/Parseable.java x: 2 commits (all time) y: 643 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/Path.java x: 2 commits (all time) y: 177 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/PathParser.java x: 2 commits (all time) y: 207 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/PropertiesParser.java x: 2 commits (all time) y: 154 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/ResolveSource.java x: 2 commits (all time) y: 269 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/SerializedConfigValue.java x: 2 commits (all time) y: 440 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/SimpleConfig.java x: 2 commits (all time) y: 940 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/SimpleConfigList.java x: 2 commits (all time) y: 372 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/SimpleConfigObject.java x: 4 commits (all time) y: 542 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/SimpleConfigOrigin.java x: 2 commits (all time) y: 472 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/Tokenizer.java x: 2 commits (all time) y: 558 lines of code image-loader/app/lib/Notifications.scala x: 16 commits (all time) y: 3 lines of code kahuna/public/js/components/gr-collections-panel/gr-collections-panel.css x: 68 commits (all time) y: 71 lines of code kahuna/public/js/search-query/query-syntax.js x: 30 commits (all time) y: 32 lines of code kahuna/public/js/components/gr-chips/gr-chip-input.js x: 6 commits (all time) y: 132 lines of code kahuna/public/js/components/gu-lazy-table/gu-lazy-table-cell.js x: 20 commits (all time) y: 33 lines of code
2605.0
lines of code
  min: 1.0
  average: 80.47
  25th percentile: 16.0
  median: 40.0
  75th percentile: 85.0
  max: 2605.0
0 1209.0
commits (all time)
min: 1.0 | average: 35.26 | 25th percentile: 5.0 | median: 13.0 | 75th percentile: 33.0 | max: 1209.0

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

kahuna/public/js/components/gr-my-uploads/gr-my-uploads.tsx x: 6 contributors (all time) y: 74 lines of code kahuna/public/js/components/gr-permissions-filter/gr-permissions-filter.tsx x: 8 contributors (all time) y: 237 lines of code kahuna/public/js/takedown/crops-and-usages.tsx x: 4 contributors (all time) y: 253 lines of code kahuna/public/js/takedown/delete-from-grid-step.tsx x: 6 contributors (all time) y: 371 lines of code kahuna/public/js/search/index.js x: 34 contributors (all time) y: 283 lines of code kahuna/public/js/search/query.js x: 36 contributors (all time) y: 596 lines of code cdk/lib/image-cache-purger.ts x: 4 contributors (all time) y: 54 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/DateTimeUtils.scala x: 9 contributors (all time) y: 53 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/cleanup/SupplierProcessors.scala x: 35 contributors (all time) y: 515 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/config/CommonConfig.scala x: 37 contributors (all time) y: 110 lines of code dev/oidc-provider/app.js x: 14 contributors (all time) y: 19 lines of code dev/script/generate-config/service-config.js x: 28 contributors (all time) y: 256 lines of code image-cache-purger/src/main/scala/com/gu/mediaservice/FastlyApiKeyProvider.scala x: 4 contributors (all time) y: 35 lines of code image-cache-purger/src/main/scala/com/gu/mediaservice/FastlyPurger.scala x: 4 contributors (all time) y: 43 lines of code image-cache-purger/src/main/scala/com/gu/mediaservice/ImageCachePurger.scala x: 4 contributors (all time) y: 62 lines of code kahuna/app/KahunaComponents.scala x: 21 contributors (all time) y: 63 lines of code kahuna/app/lib/KahunaConfig.scala x: 35 contributors (all time) y: 76 lines of code kahuna/app/views/main.scala.html x: 49 contributors (all time) y: 131 lines of code kahuna/public/js/common/user-actions.html x: 26 contributors (all time) y: 47 lines of code kahuna/public/js/common/user-actions.js x: 16 contributors (all time) y: 44 lines of code kahuna/public/js/components/gr-top-bar/gr-top-bar.js x: 16 contributors (all time) y: 37 lines of code kahuna/public/js/edits/image-editor.html x: 34 contributors (all time) y: 314 lines of code kahuna/public/js/forms/datalist.html x: 12 contributors (all time) y: 13 lines of code kahuna/public/js/image/controller.js x: 42 contributors (all time) y: 291 lines of code kahuna/public/js/image/view.html x: 35 contributors (all time) y: 195 lines of code kahuna/public/js/main.js x: 34 contributors (all time) y: 426 lines of code kahuna/public/js/search/results.html x: 33 contributors (all time) y: 240 lines of code kahuna/public/js/search/results.js x: 35 contributors (all time) y: 730 lines of code kahuna/public/js/services/telemetry.ts x: 10 contributors (all time) y: 83 lines of code kahuna/public/js/takedown/controller.ts x: 4 contributors (all time) y: 26 lines of code kahuna/public/js/takedown/delete-from-content-step.tsx x: 4 contributors (all time) y: 218 lines of code kahuna/public/js/takedown/index.ts x: 4 contributors (all time) y: 94 lines of code kahuna/public/js/takedown/takedown-context.tsx x: 4 contributors (all time) y: 204 lines of code kahuna/public/js/takedown/takedown-page.tsx x: 4 contributors (all time) y: 120 lines of code kahuna/public/js/takedown/view.html x: 4 contributors (all time) y: 8 lines of code kahuna/public/js/types/image.ts x: 4 contributors (all time) y: 86 lines of code kahuna/public/js/upload/controller.js x: 19 contributors (all time) y: 59 lines of code kahuna/public/js/upload/dnd-uploader.html x: 10 contributors (all time) y: 11 lines of code kahuna/public/js/upload/jobs/required-metadata-editor.html x: 21 contributors (all time) y: 172 lines of code kahuna/public/js/upload/jobs/upload-jobs.js x: 20 contributors (all time) y: 184 lines of code kahuna/public/js/upload/prompt/prompt.html x: 13 contributors (all time) y: 10 lines of code kahuna/public/js/upload/prompt/prompt.js x: 12 contributors (all time) y: 22 lines of code kahuna/public/js/util/default-non-free-filter.js x: 4 contributors (all time) y: 11 lines of code kahuna/public/js/window.ts x: 13 contributors (all time) y: 53 lines of code kahuna/public/stylesheets/main.css x: 53 contributors (all time) y: 2605 lines of code media-api/app/MediaApiComponents.scala x: 28 contributors (all time) y: 46 lines of code media-api/app/controllers/MediaApi.scala x: 52 contributors (all time) y: 711 lines of code media-api/app/controllers/UsageController.scala x: 15 contributors (all time) y: 111 lines of code media-api/app/lib/ContentApi.scala x: 3 contributors (all time) y: 56 lines of code media-api/app/lib/ImageResponse.scala x: 49 contributors (all time) y: 361 lines of code media-api/app/lib/MediaApiConfig.scala x: 32 contributors (all time) y: 76 lines of code media-api/app/lib/elasticsearch/ElasticSearch.scala x: 48 contributors (all time) y: 581 lines of code media-api/app/models/UsagesInContent.scala x: 3 contributors (all time) y: 19 lines of code riff-raff.yaml x: 25 contributors (all time) y: 203 lines of code usage/app/controllers/UsageApi.scala x: 35 contributors (all time) y: 382 lines of code usage/app/model/DeleteUsagesByIdsRequest.scala x: 3 contributors (all time) y: 6 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/config/FieldAlias.scala x: 10 contributors (all time) y: 39 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/elasticsearch/MappingTest.scala x: 19 contributors (all time) y: 248 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/FileMetadata.scala x: 20 contributors (all time) y: 67 lines of code image-loader/app/lib/imaging/FileMetadataReader.scala x: 31 contributors (all time) y: 222 lines of code kahuna/public/js/components/gr-collections-panel/gr-collections-panel.js x: 20 contributors (all time) y: 255 lines of code kahuna/public/js/components/gr-display-crops/gr-display-crops.css x: 7 contributors (all time) y: 14 lines of code kahuna/public/js/components/gr-display-crops/gr-display-crops.html x: 14 contributors (all time) y: 28 lines of code kahuna/public/js/components/gr-image-metadata/gr-image-metadata.html x: 42 contributors (all time) y: 960 lines of code kahuna/public/js/components/gr-image-metadata/gr-image-metadata.js x: 31 contributors (all time) y: 561 lines of code kahuna/public/js/components/gr-photoshoot/gr-photoshoot.js x: 11 contributors (all time) y: 88 lines of code kahuna/public/js/components/gr-preset-labels/gr-preset-labels.js x: 17 contributors (all time) y: 58 lines of code kahuna/public/js/components/gr-sort-control/base-sort-control.tsx x: 7 contributors (all time) y: 189 lines of code kahuna/public/js/components/gr-sort-control/gr-extended-sort-control.tsx x: 5 contributors (all time) y: 105 lines of code kahuna/public/js/components/gr-sort-control/gr-sort-control.tsx x: 9 contributors (all time) y: 88 lines of code kahuna/public/js/components/gu-date-range/gu-date-range.js x: 17 contributors (all time) y: 150 lines of code kahuna/public/js/edits/image-editor.js x: 26 contributors (all time) y: 379 lines of code kahuna/public/js/edits/list-editor.js x: 12 contributors (all time) y: 182 lines of code kahuna/public/js/preview/image.js x: 36 contributors (all time) y: 161 lines of code kahuna/public/js/search/query-filter.js x: 17 contributors (all time) y: 71 lines of code kahuna/public/js/search/query.html x: 35 contributors (all time) y: 85 lines of code kahuna/public/js/upload/view.html x: 23 contributors (all time) y: 26 lines of code media-api/app/lib/elasticsearch/QueryBuilder.scala x: 32 contributors (all time) y: 188 lines of code .devcontainer/devenv.yaml x: 3 contributors (all time) y: 28 lines of code collections/app/store/CollectionsStore.scala x: 16 contributors (all time) y: 55 lines of code common-lib/src/main/scala/com/gu/mediaservice/GridClient.scala x: 14 contributors (all time) y: 229 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/BaseStore.scala x: 17 contributors (all time) y: 51 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/ImageIngestOperations.scala x: 19 contributors (all time) y: 106 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/S3ImageStorage.scala x: 23 contributors (all time) y: 44 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/VectorUtils.scala x: 3 contributors (all time) y: 40 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/argo/model/CollectionResponse.scala x: 5 contributors (all time) y: 47 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/AwsClientBuilderUtils.scala x: 8 contributors (all time) y: 21 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/Bedrock.scala x: 4 contributors (all time) y: 79 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/DynamoDB.scala x: 23 contributors (all time) y: 220 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/EC2MetadataUtils.scala x: 2 contributors (all time) y: 8 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/Kinesis.scala x: 15 contributors (all time) y: 47 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/S3.scala x: 33 contributors (all time) y: 194 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/S3Vectors.scala x: 4 contributors (all time) y: 103 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/SNS.scala x: 11 contributors (all time) y: 13 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/SimpleSqsMessageConsumer.scala x: 9 contributors (all time) y: 50 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/SqsViaSnsMessageConsumer.scala x: 8 contributors (all time) y: 76 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/cleanup/PhotographerRenamer.scala x: 14 contributors (all time) y: 635 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/elasticsearch/ElasticSearchClient.scala x: 30 contributors (all time) y: 168 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/guardian/GuardianUsageRightsConfig.scala x: 10 contributors (all time) y: 633 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/logging/LogConfig.scala x: 11 contributors (all time) y: 103 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/metadata/SoftDeletedMetadataTable.scala x: 6 contributors (all time) y: 37 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/metrics/CloudWatchMetrics.scala x: 15 contributors (all time) y: 134 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/usage/ItemToMediaUsage.scala x: 13 contributors (all time) y: 109 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/UsageRights.scala x: 28 contributors (all time) y: 498 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/usage/ChildUsageMetadata.scala x: 5 contributors (all time) y: 20 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/usage/DigitalUsageMetadata.scala x: 11 contributors (all time) y: 28 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/usage/PrintUsageMetadata.scala x: 15 contributors (all time) y: 73 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/usage/SyndicationUsageMetadata.scala x: 8 contributors (all time) y: 18 lines of code image-loader/app/ImageLoaderComponents.scala x: 22 contributors (all time) y: 45 lines of code image-loader/app/controllers/ImageLoaderController.scala x: 25 contributors (all time) y: 570 lines of code image-loader/app/lib/UploadStatusTable.scala x: 12 contributors (all time) y: 49 lines of code image-loader/app/model/Projector.scala x: 12 contributors (all time) y: 187 lines of code image-loader/app/model/S3IngestObject.scala x: 8 contributors (all time) y: 36 lines of code image-loader/app/model/Uploader.scala x: 17 contributors (all time) y: 451 lines of code kahuna/app/controllers/KahunaController.scala x: 30 contributors (all time) y: 85 lines of code kahuna/public/js/components/gr-archiver/gr-archiver.js x: 12 contributors (all time) y: 144 lines of code kahuna/public/js/components/gr-collection-overlay/gr-collection-overlay.css x: 11 contributors (all time) y: 54 lines of code kahuna/public/js/components/gr-downloader/gr-downloader.html x: 24 contributors (all time) y: 57 lines of code kahuna/public/js/components/gr-downloader/gr-downloader.js x: 23 contributors (all time) y: 114 lines of code kahuna/public/js/components/gr-image-usage/gr-image-usage-list.html x: 20 contributors (all time) y: 33 lines of code kahuna/public/js/components/gr-image-usage/gr-image-usage.html x: 18 contributors (all time) y: 11 lines of code kahuna/public/js/components/gr-image-usage/gr-image-usage.js x: 18 contributors (all time) y: 135 lines of code kahuna/public/js/components/gr-sort-control/gr-sort-control.css x: 7 contributors (all time) y: 142 lines of code kahuna/public/js/components/gr-top-bar/gr-top-bar.css x: 18 contributors (all time) y: 39 lines of code kahuna/public/js/components/gr-undelete-image/gr-un-delete-image.js x: 8 contributors (all time) y: 48 lines of code kahuna/public/js/components/gr-usagerights-summary/gr-usagerights-summary.tsx x: 6 contributors (all time) y: 114 lines of code kahuna/public/js/components/gu-date-range/gu-date-range.css x: 12 contributors (all time) y: 60 lines of code kahuna/public/js/crop/controller.js x: 26 contributors (all time) y: 218 lines of code kahuna/public/js/crop/index.js x: 17 contributors (all time) y: 40 lines of code kahuna/public/js/crop/view.html x: 30 contributors (all time) y: 135 lines of code kahuna/public/js/directives/ui-crop-box/ui-crop-box.js x: 14 contributors (all time) y: 99 lines of code kahuna/public/js/services/image-list.js x: 12 contributors (all time) y: 64 lines of code kahuna/public/js/services/image/usages.js x: 22 contributors (all time) y: 91 lines of code kahuna/public/js/upload/controller.css x: 5 contributors (all time) y: 5 lines of code leases/app/lib/LeaseStore.scala x: 12 contributors (all time) y: 36 lines of code media-api/app/lib/UsageStore.scala x: 16 contributors (all time) y: 188 lines of code media-api/app/lib/elasticsearch/ElasticSearchModel.scala x: 16 contributors (all time) y: 252 lines of code media-api/app/lib/elasticsearch/HybridResult.scala x: 3 contributors (all time) y: 112 lines of code metadata-editor/app/controllers/EditsController.scala x: 30 contributors (all time) y: 182 lines of code metadata-editor/app/controllers/SyndicationController.scala x: 6 contributors (all time) y: 58 lines of code metadata-editor/app/lib/Syndication.scala x: 6 contributors (all time) y: 142 lines of code rest-lib/src/main/scala/com/gu/mediaservice/lib/guardian/auth/PandaAuthenticationProvider.scala x: 11 contributors (all time) y: 135 lines of code rest-lib/src/main/scala/com/gu/mediaservice/lib/guardian/auth/Permissions.scala x: 6 contributors (all time) y: 12 lines of code rest-lib/src/main/scala/com/gu/mediaservice/lib/guardian/auth/PermissionsAuthorisationProvider.scala x: 15 contributors (all time) y: 54 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/BulkRemoveFromCollection.scala x: 2 contributors (all time) y: 40 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/EnactS3Changes.scala x: 8 contributors (all time) y: 175 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/LoadFromS3Bucket.scala x: 7 contributors (all time) y: 45 lines of code thrall/app/ThrallComponents.scala x: 25 contributors (all time) y: 78 lines of code thrall/app/controllers/ReaperController.scala x: 10 contributors (all time) y: 202 lines of code thrall/app/controllers/ThrallController.scala x: 14 contributors (all time) y: 251 lines of code thrall/app/views/index.scala.html x: 9 contributors (all time) y: 132 lines of code thrall/app/views/migrationFailures.scala.html x: 8 contributors (all time) y: 90 lines of code thrall/app/views/restoreFromReplica.scala.html x: 6 contributors (all time) y: 30 lines of code usage/app/lib/ContentApis.scala x: 5 contributors (all time) y: 57 lines of code usage/app/model/UsageRecord.scala x: 17 contributors (all time) y: 132 lines of code usage/app/model/UsageTable.scala x: 20 contributors (all time) y: 144 lines of code media-api/app/lib/UsageQuota.scala x: 19 contributors (all time) y: 35 lines of code cropper/app/lib/CropStore.scala x: 15 contributors (all time) y: 67 lines of code kahuna/public/js/services/api/media-api.js x: 26 contributors (all time) y: 106 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/config/CommonConfigWithElastic.scala x: 13 contributors (all time) y: 27 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/elasticsearch/ElasticSearchConfig.scala x: 12 contributors (all time) y: 2 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/elasticsearch/Mappings.scala x: 39 contributors (all time) y: 336 lines of code kahuna/public/js/components/gr-chips/gr-chips.js x: 9 contributors (all time) y: 166 lines of code media-api/app/lib/querysyntax/QuerySyntax.scala x: 22 contributors (all time) y: 222 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/EsScript.scala x: 29 contributors (all time) y: 354 lines of code thrall/app/lib/elasticsearch/ElasticSearch.scala x: 23 contributors (all time) y: 678 lines of code kahuna/public/js/search/structured-query/syntax.ts x: 3 contributors (all time) y: 96 lines of code auth/app/auth/AuthController.scala x: 22 contributors (all time) y: 123 lines of code cdk/lib/image-embedder-lambda.ts x: 6 contributors (all time) y: 201 lines of code collections/app/controllers/ImageCollectionsController.scala x: 20 contributors (all time) y: 59 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/ImageStorage.scala x: 16 contributors (all time) y: 29 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/cleanup/RedundantTokenRemover.scala x: 10 contributors (all time) y: 55 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/elasticsearch/ReapableEligibility.scala x: 7 contributors (all time) y: 33 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/Image.scala x: 25 contributors (all time) y: 148 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/ThrallMessage.scala x: 12 contributors (all time) y: 109 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/usage/MediaUsage.scala x: 14 contributors (all time) y: 63 lines of code dev/cloudformation/grid-dev-core.yml x: 15 contributors (all time) y: 328 lines of code image-embedder-lambda/src/backfiller/elasticSearch.ts x: 3 contributors (all time) y: 69 lines of code image-embedder-lambda/src/backfiller/freeImagesFilter.ts x: 2 contributors (all time) y: 549 lines of code image-embedder-lambda/src/embedder/embedder.ts x: 3 contributors (all time) y: 177 lines of code image-embedder-lambda/src/embedder/imageResolver.ts x: 3 contributors (all time) y: 155 lines of code image-embedder-lambda/src/embedder/localRun.ts x: 3 contributors (all time) y: 191 lines of code image-embedder-lambda/src/embedder/resizeImage.ts x: 3 contributors (all time) y: 50 lines of code image-embedder-lambda/src/embedder/thrallEventPublisher.ts x: 3 contributors (all time) y: 114 lines of code image-loader/app/lib/ImageLoaderConfig.scala x: 21 contributors (all time) y: 33 lines of code image-loader/app/model/upload/OptimiseOps.scala x: 10 contributors (all time) y: 45 lines of code image-loader/app/model/upload/UploadRequest.scala x: 7 contributors (all time) y: 22 lines of code kahuna/public/js/image/service.js x: 21 contributors (all time) y: 42 lines of code kahuna/public/js/preview/image.html x: 34 contributors (all time) y: 177 lines of code kahuna/public/js/search/structured-query/query-suggestions.ts x: 5 contributors (all time) y: 274 lines of code kahuna/public/js/services/image-logic.js x: 17 contributors (all time) y: 115 lines of code media-api/app/lib/ImageExtras.scala x: 23 contributors (all time) y: 79 lines of code media-api/app/lib/elasticsearch/IsQueryFilter.scala x: 18 contributors (all time) y: 65 lines of code media-api/app/lib/elasticsearch/SearchFilters.scala x: 29 contributors (all time) y: 64 lines of code rest-lib/src/main/scala/com/gu/mediaservice/lib/auth/Authorisation.scala x: 14 contributors (all time) y: 75 lines of code thrall/app/lib/ThrallMetrics.scala x: 17 contributors (all time) y: 25 lines of code thrall/app/lib/kinesis/MessageProcessor.scala x: 25 contributors (all time) y: 189 lines of code usage/app/lib/MediaUsageBuilder.scala x: 7 contributors (all time) y: 110 lines of code usage/app/model/UsageGroup.scala x: 29 contributors (all time) y: 246 lines of code collections/app/CollectionsComponents.scala x: 13 contributors (all time) y: 18 lines of code collections/app/controllers/CollectionsController.scala x: 19 contributors (all time) y: 169 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/collections/CollectionsManager.scala x: 11 contributors (all time) y: 45 lines of code image-loader/app/lib/QuarantineStore.scala x: 6 contributors (all time) y: 4 lines of code kahuna/public/js/components/gr-chips/gr-text-chip.html x: 9 contributors (all time) y: 10 lines of code kahuna/public/js/components/gr-chips/gr-text-chip.js x: 8 contributors (all time) y: 95 lines of code kahuna/public/js/search/structured-query/structured-query.js x: 15 contributors (all time) y: 96 lines of code kahuna/public/js/components/gr-notifications-banner/gr-notifications-banner.tsx x: 6 contributors (all time) y: 228 lines of code kahuna/public/js/components/gr-panel-button/gr-panel-button.js x: 12 contributors (all time) y: 75 lines of code kahuna/public/js/components/gr-panels/gr-panels.js x: 12 contributors (all time) y: 91 lines of code kahuna/public/js/search/syntax/syntax.html x: 21 contributors (all time) y: 178 lines of code kahuna/public/js/services/api/edits-api.js x: 9 contributors (all time) y: 23 lines of code kahuna/public/js/components/gr-tooltip/gr-tooltip.js x: 11 contributors (all time) y: 36 lines of code kahuna/public/js/leases/leases.html x: 19 contributors (all time) y: 150 lines of code kahuna/public/js/leases/leases.js x: 21 contributors (all time) y: 267 lines of code rest-lib/src/main/scala/com/gu/mediaservice/lib/auth/Authentication.scala x: 10 contributors (all time) y: 101 lines of code rest-lib/src/main/scala/com/gu/mediaservice/lib/play/RequestLoggingFilter.scala x: 7 contributors (all time) y: 77 lines of code kahuna/public/js/leases/leases.css x: 10 contributors (all time) y: 140 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/imaging/ImageOperations.scala x: 22 contributors (all time) y: 247 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/imaging/im4jwrapper/ImageMagick.scala x: 18 contributors (all time) y: 100 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/Asset.scala x: 9 contributors (all time) y: 106 lines of code cropper/app/controllers/CropperController.scala x: 22 contributors (all time) y: 185 lines of code cropper/app/lib/Crops.scala x: 25 contributors (all time) y: 118 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/logging/Stopwatch.scala x: 7 contributors (all time) y: 55 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/metadata/ImageMetadataConverter.scala x: 20 contributors (all time) y: 141 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/cleanup/MetadataCleaner.scala x: 15 contributors (all time) y: 27 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/config/UsageRightsConfig.scala x: 17 contributors (all time) y: 176 lines of code kahuna/public/js/components/gr-collections-panel/gr-collections-panel-node.html x: 16 contributors (all time) y: 79 lines of code usage/app/lib/CrierStreamReader.scala x: 8 contributors (all time) y: 111 lines of code usage/app/lib/CrierEventProcessor.scala x: 6 contributors (all time) y: 155 lines of code kahuna/public/js/components/gr-radio-list/gr-radio-list.html x: 2 contributors (all time) y: 12 lines of code scripts/src/main/scala/com/gu/mediaservice/lib/JsonValueCodecJsValue.scala x: 5 contributors (all time) y: 88 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/BackfillEditLastModified.scala x: 5 contributors (all time) y: 165 lines of code kahuna/public/js/usage-rights/usage-rights-editor.js x: 21 contributors (all time) y: 220 lines of code metadata-editor/app/controllers/EditsApi.scala x: 17 contributors (all time) y: 81 lines of code auth/app/auth/AuthConfig.scala x: 11 contributors (all time) y: 6 lines of code collections/app/lib/CollectionsMetrics.scala x: 9 contributors (all time) y: 13 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/ThrallMessageSender.scala x: 14 contributors (all time) y: 83 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/config/GridConfigResources.scala x: 10 contributors (all time) y: 5 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/config/Properties.scala x: 10 contributors (all time) y: 24 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/config/ProviderLoader.scala x: 7 contributors (all time) y: 172 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/metadata/UsageRightsMetadataMapper.scala x: 5 contributors (all time) y: 36 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/play/RequestMetricFilter.scala x: 6 contributors (all time) y: 43 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/SyndicationRights.scala x: 11 contributors (all time) y: 75 lines of code common-lib/src/main/scala/com/gu/mediaservice/syntax/PlayJsonSyntax.scala x: 5 contributors (all time) y: 25 lines of code image-loader/app/lib/BodyParsers.scala x: 8 contributors (all time) y: 58 lines of code kahuna/app/lib/MetadataTemplateConfig.scala x: 7 contributors (all time) y: 98 lines of code kahuna/public/js/components/gr-info-panel/gr-info-panel.html x: 14 contributors (all time) y: 49 lines of code kahuna/public/js/upload/manager.js x: 13 contributors (all time) y: 132 lines of code leases/app/controllers/MediaLeaseController.scala x: 16 contributors (all time) y: 136 lines of code metadata-editor/app/MetadataEditorComponents.scala x: 18 contributors (all time) y: 23 lines of code thrall/app/lib/elasticsearch/ThrallMigrationClient.scala x: 7 contributors (all time) y: 164 lines of code thrall/app/lib/kinesis/ThrallEventConsumer.scala x: 15 contributors (all time) y: 117 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/ImageFields.scala x: 10 contributors (all time) y: 63 lines of code usage/app/UsageComponents.scala x: 13 contributors (all time) y: 33 lines of code kahuna/public/js/components/gr-image-usage-photosales/gr-image-usage-photosales.tsx x: 2 contributors (all time) y: 52 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/RoundedExpiration.scala x: 1 contributors (all time) y: 8 lines of code kahuna/public/js/usage-rights/usage-rights-editor.html x: 18 contributors (all time) y: 199 lines of code kahuna/public/js/components/gr-confirmation-modal/gr-confirmation-modal.tsx x: 2 contributors (all time) y: 121 lines of code kahuna/public/js/components/gr-confirmation-modal/gr-confirmation-modal.css x: 2 contributors (all time) y: 75 lines of code kahuna/public/js/components/gr-my-uploads/gr-my-uploads.css x: 2 contributors (all time) y: 49 lines of code kahuna/public/js/components/gr-permissions-filter/gr-permissions-filter-config.ts x: 2 contributors (all time) y: 85 lines of code kahuna/public/js/components/gr-permissions-filter/gr-toggle-switch.css x: 2 contributors (all time) y: 96 lines of code kahuna/public/js/components/gr-notifications-banner/gr-notifications-banner.css x: 3 contributors (all time) y: 78 lines of code kahuna/public/js/upload/dnd-uploader.js x: 15 contributors (all time) y: 188 lines of code kahuna/public/js/services/graphic-image-blur.js x: 1 contributors (all time) y: 54 lines of code kahuna/public/js/common/blurring/GNM-explainer.html x: 1 contributors (all time) y: 20 lines of code kahuna/public/js/components/gr-add-keyword/gr-add-keyword.css x: 2 contributors (all time) y: 24 lines of code kahuna/public/js/components/gr-add-keyword/gr-add-keyword.js x: 2 contributors (all time) y: 105 lines of code media-api/app/lib/elasticsearch/SyndicationFilter.scala x: 14 contributors (all time) y: 113 lines of code kahuna/public/js/components/gr-panel-button/gr-panel-button-small.html x: 13 contributors (all time) y: 49 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/config/Services.scala x: 19 contributors (all time) y: 78 lines of code kahuna/public/js/components/gr-crop-image/gr-crop-image.js x: 15 contributors (all time) y: 39 lines of code kahuna/public/js/components/gu-date-range/gu-date-range.html x: 15 contributors (all time) y: 90 lines of code kahuna/public/js/forms/datalist.js x: 8 contributors (all time) y: 131 lines of code kahuna/public/js/upload/recent/recent-uploads.js x: 6 contributors (all time) y: 71 lines of code kahuna/public/js/services/api/leases.js x: 13 contributors (all time) y: 173 lines of code usage/app/lib/UsageRecorder.scala x: 20 contributors (all time) y: 118 lines of code kahuna/public/js/edits/list-editor.css x: 6 contributors (all time) y: 103 lines of code common-lib/src/main/scala/com/gu/mediaservice/ImageDataMerger.scala x: 8 contributors (all time) y: 68 lines of code kahuna/public/js/components/gr-downloader/gr-downloader.css x: 9 contributors (all time) y: 33 lines of code kahuna/app/views/quotas.scala.html x: 5 contributors (all time) y: 78 lines of code usage/app/lib/UsageNotifier.scala x: 23 contributors (all time) y: 38 lines of code kahuna/public/js/edits/index.js x: 7 contributors (all time) y: 5 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/EsImageMetadata.scala x: 5 contributors (all time) y: 137 lines of code kahuna/public/js/services/api/media-cropper.js x: 14 contributors (all time) y: 54 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/Edits.scala x: 9 contributors (all time) y: 82 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/ProposeS3Changes.scala x: 2 contributors (all time) y: 219 lines of code common-lib/src/main/scala/com/gu/mediaservice/JsonDiff.scala x: 1 contributors (all time) y: 46 lines of code kahuna/public/js/components/gu-lazy-table/gu-lazy-table.js x: 10 contributors (all time) y: 262 lines of code kahuna/public/js/services/api/collections-api.js x: 9 contributors (all time) y: 146 lines of code scripts/src/main/java/com/gu/typesafe/config/Config.java x: 2 contributors (all time) y: 66 lines of code scripts/src/main/java/com/gu/typesafe/config/ConfigException.java x: 2 contributors (all time) y: 277 lines of code scripts/src/main/java/com/gu/typesafe/config/ConfigFactory.java x: 2 contributors (all time) y: 293 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/AbstractConfigObject.java x: 2 contributors (all time) y: 143 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/ConfigBeanImpl.java x: 2 contributors (all time) y: 245 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/ConfigDelayedMerge.java x: 2 contributors (all time) y: 256 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/ConfigDelayedMergeObject.java x: 2 contributors (all time) y: 233 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/ConfigDocumentParser.java x: 2 contributors (all time) y: 576 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/ConfigImpl.java x: 2 contributors (all time) y: 422 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/ConfigParser.java x: 2 contributors (all time) y: 330 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/Parseable.java x: 2 contributors (all time) y: 643 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/Path.java x: 2 contributors (all time) y: 177 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/PathParser.java x: 2 contributors (all time) y: 207 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/PropertiesParser.java x: 2 contributors (all time) y: 154 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/ResolveSource.java x: 2 contributors (all time) y: 269 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/SerializedConfigValue.java x: 2 contributors (all time) y: 440 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/SimpleConfig.java x: 2 contributors (all time) y: 940 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/SimpleConfigList.java x: 2 contributors (all time) y: 372 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/SimpleConfigObject.java x: 2 contributors (all time) y: 542 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/SimpleConfigOrigin.java x: 2 contributors (all time) y: 472 lines of code scripts/src/main/java/com/gu/typesafe/config/impl/Tokenizer.java x: 2 contributors (all time) y: 558 lines of code metadata-editor/app/lib/Notifications.scala x: 8 contributors (all time) y: 3 lines of code kahuna/public/js/components/gr-collections-panel/gr-collections-panel.css x: 9 contributors (all time) y: 71 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/argo/model/ErrorResponse.scala x: 1 contributors (all time) y: 21 lines of code kahuna/public/js/components/gr-chips/gr-chip-input.js x: 3 contributors (all time) y: 132 lines of code
2605.0
lines of code
  min: 1.0
  average: 80.47
  25th percentile: 16.0
  median: 40.0
  75th percentile: 85.0
  max: 2605.0
0 53.0
contributors (all time)
min: 1.0 | average: 8.55 | 25th percentile: 3.0 | median: 6.0 | 75th percentile: 12.0 | max: 53.0

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

kahuna/public/js/components/gr-my-uploads/gr-my-uploads.tsx x: 7 commits (30d) y: 74 lines of code kahuna/public/js/components/gr-permissions-filter/gr-permissions-filter.tsx x: 11 commits (30d) y: 237 lines of code kahuna/public/js/takedown/crops-and-usages.tsx x: 7 commits (30d) y: 253 lines of code kahuna/public/js/takedown/delete-from-grid-step.tsx x: 22 commits (30d) y: 371 lines of code kahuna/public/js/search/index.js x: 17 commits (30d) y: 283 lines of code kahuna/public/js/search/query.js x: 20 commits (30d) y: 596 lines of code cdk/lib/image-cache-purger.ts x: 7 commits (30d) y: 54 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/DateTimeUtils.scala x: 4 commits (30d) y: 53 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/cleanup/SupplierProcessors.scala x: 5 commits (30d) y: 515 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/config/CommonConfig.scala x: 6 commits (30d) y: 110 lines of code dev/oidc-provider/app.js x: 7 commits (30d) y: 19 lines of code image-cache-purger/src/main/scala/com/gu/mediaservice/FastlyApiKeyProvider.scala x: 7 commits (30d) y: 35 lines of code image-cache-purger/src/main/scala/com/gu/mediaservice/FastlyPurger.scala x: 7 commits (30d) y: 43 lines of code image-cache-purger/src/main/scala/com/gu/mediaservice/ImageCachePurger.scala x: 7 commits (30d) y: 62 lines of code kahuna/app/KahunaComponents.scala x: 5 commits (30d) y: 63 lines of code kahuna/app/lib/KahunaConfig.scala x: 11 commits (30d) y: 76 lines of code kahuna/app/views/main.scala.html x: 11 commits (30d) y: 131 lines of code kahuna/public/js/common/user-actions.html x: 4 commits (30d) y: 47 lines of code kahuna/public/js/components/gr-top-bar/gr-top-bar.js x: 4 commits (30d) y: 37 lines of code kahuna/public/js/edits/image-editor.html x: 5 commits (30d) y: 314 lines of code kahuna/public/js/forms/datalist.html x: 4 commits (30d) y: 13 lines of code kahuna/public/js/image/controller.js x: 14 commits (30d) y: 291 lines of code kahuna/public/js/image/view.html x: 5 commits (30d) y: 195 lines of code kahuna/public/js/main.js x: 5 commits (30d) y: 426 lines of code kahuna/public/js/search/results.html x: 17 commits (30d) y: 240 lines of code kahuna/public/js/search/results.js x: 15 commits (30d) y: 730 lines of code kahuna/public/js/services/telemetry.ts x: 7 commits (30d) y: 83 lines of code kahuna/public/js/takedown/controller.ts x: 8 commits (30d) y: 26 lines of code kahuna/public/js/takedown/delete-from-content-step.tsx x: 9 commits (30d) y: 218 lines of code kahuna/public/js/takedown/index.ts x: 10 commits (30d) y: 94 lines of code kahuna/public/js/takedown/takedown-context.tsx x: 9 commits (30d) y: 204 lines of code kahuna/public/js/takedown/takedown-page.tsx x: 12 commits (30d) y: 120 lines of code kahuna/public/js/takedown/takedown-step.tsx x: 5 commits (30d) y: 98 lines of code kahuna/public/js/takedown/view.html x: 8 commits (30d) y: 8 lines of code kahuna/public/js/types/api.ts x: 4 commits (30d) y: 5 lines of code kahuna/public/js/types/image.ts x: 14 commits (30d) y: 86 lines of code kahuna/public/js/upload/jobs/required-metadata-editor.html x: 4 commits (30d) y: 172 lines of code kahuna/public/js/upload/jobs/upload-jobs.js x: 4 commits (30d) y: 184 lines of code kahuna/public/js/upload/prompt/prompt.html x: 7 commits (30d) y: 10 lines of code kahuna/public/js/upload/prompt/prompt.js x: 7 commits (30d) y: 22 lines of code kahuna/public/js/window.ts x: 11 commits (30d) y: 53 lines of code kahuna/public/stylesheets/main.css x: 21 commits (30d) y: 2605 lines of code media-api/app/controllers/MediaApi.scala x: 12 commits (30d) y: 711 lines of code media-api/app/lib/ImageResponse.scala x: 13 commits (30d) y: 361 lines of code media-api/app/lib/MediaApiConfig.scala x: 4 commits (30d) y: 76 lines of code media-api/app/lib/elasticsearch/ElasticSearch.scala x: 8 commits (30d) y: 581 lines of code riff-raff.yaml x: 7 commits (30d) y: 203 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/EyeVine.scala x: 6 commits (30d) y: 63 lines of code usage/app/controllers/UsageApi.scala x: 3 commits (30d) y: 382 lines of code usage/app/model/DeleteUsagesByIdsRequest.scala x: 3 commits (30d) y: 6 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/config/FieldAlias.scala x: 5 commits (30d) y: 39 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/elasticsearch/MappingTest.scala x: 5 commits (30d) y: 248 lines of code image-loader/app/lib/imaging/C2PADetector.scala x: 5 commits (30d) y: 48 lines of code image-loader/app/lib/imaging/FileMetadataReader.scala x: 5 commits (30d) y: 222 lines of code kahuna/public/js/components/gr-collections-panel/gr-collections-panel.js x: 3 commits (30d) y: 255 lines of code kahuna/public/js/components/gr-display-crops/gr-display-crops.css x: 5 commits (30d) y: 14 lines of code kahuna/public/js/components/gr-display-crops/gr-display-crops.html x: 5 commits (30d) y: 28 lines of code kahuna/public/js/components/gr-image-metadata/gr-image-metadata.html x: 5 commits (30d) y: 960 lines of code kahuna/public/js/components/gr-image-metadata/gr-image-metadata.js x: 3 commits (30d) y: 561 lines of code kahuna/public/js/components/gr-photoshoot/gr-photoshoot.js x: 3 commits (30d) y: 88 lines of code kahuna/public/js/components/gr-preset-labels/gr-preset-labels.js x: 3 commits (30d) y: 58 lines of code kahuna/public/js/components/gr-sort-control/base-sort-control.tsx x: 3 commits (30d) y: 189 lines of code kahuna/public/js/components/gr-sort-control/gr-extended-sort-control.tsx x: 3 commits (30d) y: 105 lines of code kahuna/public/js/components/gr-sort-control/gr-sort-control.tsx x: 4 commits (30d) y: 88 lines of code kahuna/public/js/components/gu-date-range/gu-date-range.js x: 3 commits (30d) y: 150 lines of code kahuna/public/js/edits/image-editor.js x: 3 commits (30d) y: 379 lines of code kahuna/public/js/edits/list-editor.js x: 3 commits (30d) y: 182 lines of code kahuna/public/js/preview/image.js x: 3 commits (30d) y: 161 lines of code kahuna/public/js/upload/view.html x: 4 commits (30d) y: 26 lines of code media-api/app/lib/elasticsearch/QueryBuilder.scala x: 5 commits (30d) y: 188 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/AlamyCleanUp.scala x: 7 commits (30d) y: 97 lines of code .devcontainer/devenv.yaml x: 2 commits (30d) y: 28 lines of code collections/app/store/CollectionsStore.scala x: 1 commits (30d) y: 55 lines of code collections/app/store/ImageCollectionsStore.scala x: 1 commits (30d) y: 43 lines of code common-lib/src/main/scala/com/gu/mediaservice/GridClient.scala x: 1 commits (30d) y: 229 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/AttributeValueConverterProvider.scala x: 1 commits (30d) y: 15 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/ImageIngestOperations.scala x: 1 commits (30d) y: 106 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/VectorUtils.scala x: 1 commits (30d) y: 40 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/AwsClientBuilderUtils.scala x: 1 commits (30d) y: 21 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/Bedrock.scala x: 1 commits (30d) y: 79 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/DynamoDB.scala x: 1 commits (30d) y: 220 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/EC2MetadataUtils.scala x: 1 commits (30d) y: 8 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/S3.scala x: 2 commits (30d) y: 194 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/cleanup/PhotographerRenamer.scala x: 3 commits (30d) y: 635 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/elasticsearch/ElasticSearchClient.scala x: 1 commits (30d) y: 168 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/guardian/GuardianUsageRightsConfig.scala x: 1 commits (30d) y: 633 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/metrics/CloudWatchMetrics.scala x: 1 commits (30d) y: 134 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/UsageRights.scala x: 1 commits (30d) y: 498 lines of code image-loader/app/controllers/ImageLoaderController.scala x: 1 commits (30d) y: 570 lines of code image-loader/app/model/Projector.scala x: 1 commits (30d) y: 187 lines of code image-loader/app/model/Uploader.scala x: 1 commits (30d) y: 451 lines of code kahuna/app/controllers/KahunaController.scala x: 1 commits (30d) y: 85 lines of code kahuna/public/js/components/gr-archiver/gr-archiver.js x: 1 commits (30d) y: 144 lines of code kahuna/public/js/components/gr-downloader/gr-downloader.html x: 2 commits (30d) y: 57 lines of code kahuna/public/js/components/gr-downloader/gr-downloader.js x: 2 commits (30d) y: 114 lines of code kahuna/public/js/components/gr-image-usage/gr-image-usage-list.html x: 2 commits (30d) y: 33 lines of code kahuna/public/js/components/gr-image-usage/gr-image-usage.html x: 2 commits (30d) y: 11 lines of code kahuna/public/js/components/gr-image-usage/gr-image-usage.js x: 2 commits (30d) y: 135 lines of code kahuna/public/js/components/gr-usagerights-summary/gr-usagerights-summary.tsx x: 1 commits (30d) y: 114 lines of code kahuna/public/js/directives/ui-crop-box/ui-crop-box.js x: 1 commits (30d) y: 99 lines of code kahuna/public/js/services/image-list.js x: 1 commits (30d) y: 64 lines of code kahuna/public/js/services/image/usages.js x: 2 commits (30d) y: 91 lines of code media-api/app/lib/UsageStore.scala x: 4 commits (30d) y: 188 lines of code media-api/app/lib/elasticsearch/ElasticSearchModel.scala x: 1 commits (30d) y: 252 lines of code metadata-editor/app/controllers/EditsController.scala x: 1 commits (30d) y: 182 lines of code thrall/app/controllers/ReaperController.scala x: 1 commits (30d) y: 202 lines of code thrall/app/views/index.scala.html x: 1 commits (30d) y: 132 lines of code media-api/app/lib/UsageQuota.scala x: 3 commits (30d) y: 35 lines of code
2605.0
lines of code
  min: 5.0
  average: 145.11
  25th percentile: 37.0
  median: 75.0
  75th percentile: 176.75
  max: 2605.0
0 22.0
commits (30d)
min: 1.0 | average: 3.87 | 25th percentile: 1.0 | median: 2.0 | 75th percentile: 5.0 | max: 22.0

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

kahuna/public/js/components/gr-my-uploads/gr-my-uploads.tsx x: 4 contributors (30d) y: 74 lines of code kahuna/public/js/components/gr-permissions-filter/gr-permissions-filter.tsx x: 5 contributors (30d) y: 237 lines of code kahuna/public/js/takedown/crops-and-usages.tsx x: 4 contributors (30d) y: 253 lines of code kahuna/public/js/takedown/delete-from-grid-step.tsx x: 6 contributors (30d) y: 371 lines of code kahuna/public/js/search/index.js x: 6 contributors (30d) y: 283 lines of code kahuna/public/js/search/query.js x: 6 contributors (30d) y: 596 lines of code cdk/lib/image-cache-purger.ts x: 4 contributors (30d) y: 54 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/DateTimeUtils.scala x: 3 contributors (30d) y: 53 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/cleanup/SupplierProcessors.scala x: 3 contributors (30d) y: 515 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/config/CommonConfig.scala x: 4 contributors (30d) y: 110 lines of code dev/oidc-provider/app.js x: 4 contributors (30d) y: 19 lines of code dev/script/generate-config/service-config.js x: 5 contributors (30d) y: 256 lines of code image-cache-purger/src/main/scala/com/gu/mediaservice/FastlyApiKeyProvider.scala x: 4 contributors (30d) y: 35 lines of code image-cache-purger/src/main/scala/com/gu/mediaservice/FastlyPurger.scala x: 4 contributors (30d) y: 43 lines of code image-cache-purger/src/main/scala/com/gu/mediaservice/ImageCachePurger.scala x: 4 contributors (30d) y: 62 lines of code kahuna/app/views/main.scala.html x: 4 contributors (30d) y: 131 lines of code kahuna/public/js/edits/image-editor.html x: 3 contributors (30d) y: 314 lines of code kahuna/public/js/image/controller.js x: 8 contributors (30d) y: 291 lines of code kahuna/public/js/image/view.html x: 4 contributors (30d) y: 195 lines of code kahuna/public/js/main.js x: 4 contributors (30d) y: 426 lines of code kahuna/public/js/search/results.html x: 4 contributors (30d) y: 240 lines of code kahuna/public/js/search/results.js x: 4 contributors (30d) y: 730 lines of code kahuna/public/js/services/telemetry.ts x: 5 contributors (30d) y: 83 lines of code kahuna/public/js/takedown/controller.ts x: 4 contributors (30d) y: 26 lines of code kahuna/public/js/takedown/delete-from-content-step.tsx x: 4 contributors (30d) y: 218 lines of code kahuna/public/js/takedown/index.ts x: 4 contributors (30d) y: 94 lines of code kahuna/public/js/takedown/takedown-page.tsx x: 4 contributors (30d) y: 120 lines of code kahuna/public/js/takedown/view.html x: 4 contributors (30d) y: 8 lines of code kahuna/public/js/types/image.ts x: 4 contributors (30d) y: 86 lines of code kahuna/public/js/upload/controller.js x: 5 contributors (30d) y: 59 lines of code kahuna/public/js/upload/jobs/required-metadata-editor.html x: 3 contributors (30d) y: 172 lines of code kahuna/public/js/upload/jobs/upload-jobs.js x: 3 contributors (30d) y: 184 lines of code kahuna/public/js/upload/prompt/prompt.html x: 3 contributors (30d) y: 10 lines of code kahuna/public/js/upload/prompt/prompt.js x: 3 contributors (30d) y: 22 lines of code kahuna/public/stylesheets/main.css x: 6 contributors (30d) y: 2605 lines of code media-api/app/controllers/MediaApi.scala x: 5 contributors (30d) y: 711 lines of code media-api/app/controllers/UsageController.scala x: 3 contributors (30d) y: 111 lines of code media-api/app/lib/ImageResponse.scala x: 6 contributors (30d) y: 361 lines of code media-api/app/lib/MediaApiConfig.scala x: 3 contributors (30d) y: 76 lines of code media-api/app/lib/elasticsearch/ElasticSearch.scala x: 3 contributors (30d) y: 581 lines of code media-api/app/models/UsagesInContent.scala x: 3 contributors (30d) y: 19 lines of code usage/app/controllers/UsageApi.scala x: 3 contributors (30d) y: 382 lines of code kahuna/public/js/components/gr-collections-panel/gr-collections-panel.js x: 3 contributors (30d) y: 255 lines of code kahuna/public/js/components/gr-image-metadata/gr-image-metadata.html x: 4 contributors (30d) y: 960 lines of code kahuna/public/js/components/gr-image-metadata/gr-image-metadata.js x: 3 contributors (30d) y: 561 lines of code kahuna/public/js/components/gr-photoshoot/gr-photoshoot.js x: 3 contributors (30d) y: 88 lines of code kahuna/public/js/components/gr-sort-control/base-sort-control.tsx x: 3 contributors (30d) y: 189 lines of code kahuna/public/js/components/gu-date-range/gu-date-range.js x: 3 contributors (30d) y: 150 lines of code kahuna/public/js/edits/image-editor.js x: 3 contributors (30d) y: 379 lines of code kahuna/public/js/preview/image.js x: 3 contributors (30d) y: 161 lines of code kahuna/public/js/search/query-filter.js x: 5 contributors (30d) y: 71 lines of code media-api/app/lib/elasticsearch/QueryBuilder.scala x: 4 contributors (30d) y: 188 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/AlamyCleanUp.scala x: 3 contributors (30d) y: 97 lines of code .devcontainer/devenv.yaml x: 1 contributors (30d) y: 28 lines of code collections/app/store/CollectionsStore.scala x: 1 contributors (30d) y: 55 lines of code collections/app/store/ImageCollectionsStore.scala x: 1 contributors (30d) y: 43 lines of code common-lib/src/main/scala/com/gu/mediaservice/GridClient.scala x: 1 contributors (30d) y: 229 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/AttributeValueConverterProvider.scala x: 1 contributors (30d) y: 15 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/ImageIngestOperations.scala x: 1 contributors (30d) y: 106 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/VectorUtils.scala x: 1 contributors (30d) y: 40 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/Bedrock.scala x: 1 contributors (30d) y: 79 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/DynamoDB.scala x: 1 contributors (30d) y: 220 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/EC2MetadataUtils.scala x: 1 contributors (30d) y: 8 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/S3.scala x: 1 contributors (30d) y: 194 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/cleanup/PhotographerRenamer.scala x: 2 contributors (30d) y: 635 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/elasticsearch/ElasticSearchClient.scala x: 1 contributors (30d) y: 168 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/guardian/GuardianUsageRightsConfig.scala x: 1 contributors (30d) y: 633 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/metrics/CloudWatchMetrics.scala x: 1 contributors (30d) y: 134 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/UsageRights.scala x: 1 contributors (30d) y: 498 lines of code image-loader/app/controllers/ImageLoaderController.scala x: 1 contributors (30d) y: 570 lines of code image-loader/app/model/Uploader.scala x: 1 contributors (30d) y: 451 lines of code kahuna/app/controllers/KahunaController.scala x: 1 contributors (30d) y: 85 lines of code kahuna/public/js/components/gr-archiver/gr-archiver.js x: 1 contributors (30d) y: 144 lines of code kahuna/public/js/components/gr-confirm-delete/gr-confirm-delete.css x: 2 contributors (30d) y: 23 lines of code kahuna/public/js/components/gr-downloader/gr-downloader.html x: 2 contributors (30d) y: 57 lines of code kahuna/public/js/components/gr-downloader/gr-downloader.js x: 2 contributors (30d) y: 114 lines of code kahuna/public/js/components/gr-image-usage/gr-image-usage-list.html x: 2 contributors (30d) y: 33 lines of code kahuna/public/js/components/gr-image-usage/gr-image-usage.html x: 2 contributors (30d) y: 11 lines of code kahuna/public/js/components/gr-image-usage/gr-image-usage.js x: 2 contributors (30d) y: 135 lines of code kahuna/public/js/components/gr-usagerights-summary/gr-usagerights-summary.tsx x: 1 contributors (30d) y: 114 lines of code kahuna/public/js/directives/ui-crop-box/ui-crop-box.js x: 1 contributors (30d) y: 99 lines of code kahuna/public/js/services/image-list.js x: 1 contributors (30d) y: 64 lines of code kahuna/public/js/services/image/usages.js x: 2 contributors (30d) y: 91 lines of code media-api/app/lib/UsageStore.scala x: 2 contributors (30d) y: 188 lines of code media-api/app/lib/elasticsearch/ElasticSearchModel.scala x: 1 contributors (30d) y: 252 lines of code metadata-editor/app/controllers/EditsController.scala x: 1 contributors (30d) y: 182 lines of code thrall/app/controllers/ReaperController.scala x: 1 contributors (30d) y: 202 lines of code thrall/app/views/index.scala.html x: 1 contributors (30d) y: 132 lines of code
2605.0
lines of code
  min: 5.0
  average: 145.11
  25th percentile: 37.0
  median: 75.0
  75th percentile: 176.75
  max: 2605.0
0 8.0
contributors (30d)
min: 1.0 | average: 2.43 | 25th percentile: 1.0 | median: 2.0 | 75th percentile: 4.0 | max: 8.0

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

kahuna/public/js/components/gr-my-uploads/gr-my-uploads.tsx x: 7 commits (90d) y: 74 lines of code kahuna/public/js/components/gr-permissions-filter/gr-permissions-filter.tsx x: 12 commits (90d) y: 237 lines of code kahuna/public/js/takedown/crops-and-usages.tsx x: 7 commits (90d) y: 253 lines of code kahuna/public/js/takedown/delete-from-grid-step.tsx x: 22 commits (90d) y: 371 lines of code kahuna/public/js/search/index.js x: 18 commits (90d) y: 283 lines of code kahuna/public/js/search/query.js x: 35 commits (90d) y: 596 lines of code cdk/lib/image-cache-purger.ts x: 7 commits (90d) y: 54 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/DateTimeUtils.scala x: 4 commits (90d) y: 53 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/cleanup/SupplierProcessors.scala x: 5 commits (90d) y: 515 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/config/CommonConfig.scala x: 22 commits (90d) y: 110 lines of code dev/oidc-provider/app.js x: 7 commits (90d) y: 19 lines of code dev/script/generate-config/service-config.js x: 17 commits (90d) y: 256 lines of code image-cache-purger/src/main/scala/com/gu/mediaservice/FastlyApiKeyProvider.scala x: 7 commits (90d) y: 35 lines of code image-cache-purger/src/main/scala/com/gu/mediaservice/FastlyPurger.scala x: 7 commits (90d) y: 43 lines of code image-cache-purger/src/main/scala/com/gu/mediaservice/ImageCachePurger.scala x: 7 commits (90d) y: 62 lines of code kahuna/app/KahunaComponents.scala x: 5 commits (90d) y: 63 lines of code kahuna/app/lib/KahunaConfig.scala x: 15 commits (90d) y: 76 lines of code kahuna/app/views/main.scala.html x: 17 commits (90d) y: 131 lines of code kahuna/public/js/common/user-actions.html x: 4 commits (90d) y: 47 lines of code kahuna/public/js/components/gr-top-bar/gr-top-bar.js x: 4 commits (90d) y: 37 lines of code kahuna/public/js/edits/image-editor.html x: 9 commits (90d) y: 314 lines of code kahuna/public/js/forms/datalist.html x: 4 commits (90d) y: 13 lines of code kahuna/public/js/image/controller.js x: 23 commits (90d) y: 291 lines of code kahuna/public/js/image/view.html x: 5 commits (90d) y: 195 lines of code kahuna/public/js/main.js x: 5 commits (90d) y: 426 lines of code kahuna/public/js/search/results.html x: 34 commits (90d) y: 240 lines of code kahuna/public/js/search/results.js x: 25 commits (90d) y: 730 lines of code kahuna/public/js/services/telemetry.ts x: 9 commits (90d) y: 83 lines of code kahuna/public/js/takedown/controller.ts x: 8 commits (90d) y: 26 lines of code kahuna/public/js/takedown/delete-from-content-step.tsx x: 9 commits (90d) y: 218 lines of code kahuna/public/js/takedown/index.ts x: 10 commits (90d) y: 94 lines of code kahuna/public/js/takedown/takedown-context.tsx x: 9 commits (90d) y: 204 lines of code kahuna/public/js/takedown/takedown-page.tsx x: 12 commits (90d) y: 120 lines of code kahuna/public/js/takedown/takedown-step.tsx x: 5 commits (90d) y: 98 lines of code kahuna/public/js/takedown/view.html x: 8 commits (90d) y: 8 lines of code kahuna/public/js/types/api.ts x: 4 commits (90d) y: 5 lines of code kahuna/public/js/types/image.ts x: 14 commits (90d) y: 86 lines of code kahuna/public/js/upload/controller.js x: 9 commits (90d) y: 59 lines of code kahuna/public/js/upload/jobs/required-metadata-editor.html x: 4 commits (90d) y: 172 lines of code kahuna/public/js/upload/jobs/upload-jobs.js x: 4 commits (90d) y: 184 lines of code kahuna/public/js/upload/prompt/prompt.html x: 7 commits (90d) y: 10 lines of code kahuna/public/js/upload/prompt/prompt.js x: 7 commits (90d) y: 22 lines of code kahuna/public/js/window.ts x: 14 commits (90d) y: 53 lines of code kahuna/public/stylesheets/main.css x: 38 commits (90d) y: 2605 lines of code media-api/app/MediaApiComponents.scala x: 8 commits (90d) y: 46 lines of code media-api/app/controllers/MediaApi.scala x: 37 commits (90d) y: 711 lines of code media-api/app/controllers/UsageController.scala x: 10 commits (90d) y: 111 lines of code media-api/app/lib/ImageResponse.scala x: 16 commits (90d) y: 361 lines of code media-api/app/lib/MediaApiConfig.scala x: 6 commits (90d) y: 76 lines of code media-api/app/lib/elasticsearch/ElasticSearch.scala x: 23 commits (90d) y: 581 lines of code riff-raff.yaml x: 7 commits (90d) y: 203 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/EyeVine.scala x: 6 commits (90d) y: 63 lines of code usage/app/controllers/UsageApi.scala x: 3 commits (90d) y: 382 lines of code usage/app/model/DeleteUsagesByIdsRequest.scala x: 3 commits (90d) y: 6 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/config/FieldAlias.scala x: 5 commits (90d) y: 39 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/elasticsearch/MappingTest.scala x: 5 commits (90d) y: 248 lines of code image-loader/app/lib/imaging/C2PADetector.scala x: 6 commits (90d) y: 48 lines of code image-loader/app/lib/imaging/FileMetadataReader.scala x: 6 commits (90d) y: 222 lines of code kahuna/public/js/components/gr-collections-panel/gr-collections-panel.js x: 3 commits (90d) y: 255 lines of code kahuna/public/js/components/gr-display-crops/gr-display-crops.css x: 5 commits (90d) y: 14 lines of code kahuna/public/js/components/gr-display-crops/gr-display-crops.html x: 5 commits (90d) y: 28 lines of code kahuna/public/js/components/gr-image-metadata/gr-image-metadata.html x: 9 commits (90d) y: 960 lines of code kahuna/public/js/components/gr-image-metadata/gr-image-metadata.js x: 3 commits (90d) y: 561 lines of code kahuna/public/js/components/gr-photoshoot/gr-photoshoot.js x: 3 commits (90d) y: 88 lines of code kahuna/public/js/components/gr-preset-labels/gr-preset-labels.js x: 3 commits (90d) y: 58 lines of code kahuna/public/js/components/gr-sort-control/base-sort-control.tsx x: 5 commits (90d) y: 189 lines of code kahuna/public/js/components/gr-sort-control/gr-extended-sort-control.tsx x: 3 commits (90d) y: 105 lines of code kahuna/public/js/components/gr-sort-control/gr-sort-control.tsx x: 5 commits (90d) y: 88 lines of code kahuna/public/js/components/gu-date-range/gu-date-range.js x: 4 commits (90d) y: 150 lines of code kahuna/public/js/edits/image-editor.js x: 3 commits (90d) y: 379 lines of code kahuna/public/js/edits/list-editor.js x: 3 commits (90d) y: 182 lines of code kahuna/public/js/preview/image.js x: 3 commits (90d) y: 161 lines of code kahuna/public/js/search/query.html x: 15 commits (90d) y: 85 lines of code kahuna/public/js/upload/view.html x: 6 commits (90d) y: 26 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/AlamyCleanUp.scala x: 19 commits (90d) y: 97 lines of code .devcontainer/devenv.yaml x: 14 commits (90d) y: 28 lines of code collections/app/store/CollectionsStore.scala x: 2 commits (90d) y: 55 lines of code collections/app/store/ImageCollectionsStore.scala x: 2 commits (90d) y: 43 lines of code common-lib/src/main/scala/com/gu/mediaservice/GridClient.scala x: 7 commits (90d) y: 229 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/ImageIngestOperations.scala x: 16 commits (90d) y: 106 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/S3ImageStorage.scala x: 10 commits (90d) y: 44 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/VectorUtils.scala x: 2 commits (90d) y: 40 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/auth/KeyStore.scala x: 9 commits (90d) y: 20 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/AwsClientBuilderUtils.scala x: 2 commits (90d) y: 21 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/Bedrock.scala x: 2 commits (90d) y: 79 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/DynamoDB.scala x: 10 commits (90d) y: 220 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/EC2MetadataUtils.scala x: 2 commits (90d) y: 8 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/Embedder.scala x: 4 commits (90d) y: 27 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/Kinesis.scala x: 5 commits (90d) y: 47 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/S3.scala x: 50 commits (90d) y: 194 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/S3Vectors.scala x: 2 commits (90d) y: 103 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/SqsViaSnsMessageConsumer.scala x: 4 commits (90d) y: 76 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/cleanup/PhotographerRenamer.scala x: 4 commits (90d) y: 635 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/elasticsearch/ElasticSearchClient.scala x: 2 commits (90d) y: 168 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/guardian/GuardianUsageRightsConfig.scala x: 3 commits (90d) y: 633 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/metadata/SoftDeletedMetadataTable.scala x: 3 commits (90d) y: 37 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/metrics/CloudWatchMetrics.scala x: 2 commits (90d) y: 134 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/usage/ItemToMediaUsage.scala x: 11 commits (90d) y: 109 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/UsageRights.scala x: 5 commits (90d) y: 498 lines of code image-loader/app/controllers/ImageLoaderController.scala x: 11 commits (90d) y: 570 lines of code image-loader/app/model/Projector.scala x: 7 commits (90d) y: 187 lines of code image-loader/app/model/Uploader.scala x: 4 commits (90d) y: 451 lines of code kahuna/app/controllers/KahunaController.scala x: 7 commits (90d) y: 85 lines of code kahuna/app/lib/FeatureSwitch.scala x: 9 commits (90d) y: 44 lines of code kahuna/public/js/components/gr-archiver/gr-archiver.js x: 7 commits (90d) y: 144 lines of code kahuna/public/js/components/gr-downloader/gr-downloader.html x: 5 commits (90d) y: 57 lines of code kahuna/public/js/components/gr-downloader/gr-downloader.js x: 5 commits (90d) y: 114 lines of code kahuna/public/js/components/gr-image-usage/gr-image-usage.js x: 7 commits (90d) y: 135 lines of code kahuna/public/js/components/gr-sort-control/gr-sort-control.css x: 3 commits (90d) y: 142 lines of code kahuna/public/js/crop/index.js x: 6 commits (90d) y: 40 lines of code kahuna/public/js/crop/view.html x: 6 commits (90d) y: 135 lines of code kahuna/public/js/directives/ui-crop-box/ui-crop-box.js x: 6 commits (90d) y: 99 lines of code media-api/app/lib/elasticsearch/ElasticSearchModel.scala x: 6 commits (90d) y: 252 lines of code metadata-editor/app/controllers/EditsController.scala x: 13 commits (90d) y: 182 lines of code rest-lib/src/main/scala/com/gu/mediaservice/lib/guardian/auth/PandaAuthenticationProvider.scala x: 8 commits (90d) y: 135 lines of code rest-lib/src/main/scala/com/gu/mediaservice/lib/guardian/auth/Permissions.scala x: 3 commits (90d) y: 12 lines of code rest-lib/src/main/scala/com/gu/mediaservice/lib/guardian/auth/PermissionsAuthorisationProvider.scala x: 11 commits (90d) y: 54 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/EnactS3Changes.scala x: 2 commits (90d) y: 175 lines of code thrall/app/ThrallComponents.scala x: 10 commits (90d) y: 78 lines of code thrall/app/controllers/ReaperController.scala x: 21 commits (90d) y: 202 lines of code thrall/app/controllers/ThrallController.scala x: 10 commits (90d) y: 251 lines of code thrall/app/lib/ThrallConfig.scala x: 2 commits (90d) y: 69 lines of code thrall/app/lib/elasticsearch/GoodToGoCheck.scala x: 2 commits (90d) y: 88 lines of code thrall/app/views/index.scala.html x: 7 commits (90d) y: 132 lines of code usage/app/model/UsageRecord.scala x: 5 commits (90d) y: 132 lines of code usage/app/model/UsageTable.scala x: 6 commits (90d) y: 144 lines of code cropper/app/lib/CropStore.scala x: 4 commits (90d) y: 67 lines of code
2605.0
lines of code
  min: 5.0
  average: 144.0
  25th percentile: 37.0
  median: 73.5
  75th percentile: 174.25
  max: 2605.0
0 50.0
commits (90d)
min: 2.0 | average: 7.46 | 25th percentile: 4.0 | median: 5.0 | 75th percentile: 8.0 | max: 50.0

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

kahuna/public/js/components/gr-my-uploads/gr-my-uploads.tsx x: 4 contributors (90d) y: 74 lines of code kahuna/public/js/components/gr-permissions-filter/gr-permissions-filter.tsx x: 5 contributors (90d) y: 237 lines of code kahuna/public/js/takedown/crops-and-usages.tsx x: 4 contributors (90d) y: 253 lines of code kahuna/public/js/takedown/delete-from-grid-step.tsx x: 6 contributors (90d) y: 371 lines of code kahuna/public/js/search/index.js x: 6 contributors (90d) y: 283 lines of code kahuna/public/js/search/query.js x: 8 contributors (90d) y: 596 lines of code cdk/lib/image-cache-purger.ts x: 4 contributors (90d) y: 54 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/DateTimeUtils.scala x: 3 contributors (90d) y: 53 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/cleanup/SupplierProcessors.scala x: 3 contributors (90d) y: 515 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/config/CommonConfig.scala x: 7 contributors (90d) y: 110 lines of code dev/oidc-provider/app.js x: 4 contributors (90d) y: 19 lines of code dev/script/generate-config/service-config.js x: 7 contributors (90d) y: 256 lines of code image-cache-purger/src/main/scala/com/gu/mediaservice/FastlyApiKeyProvider.scala x: 4 contributors (90d) y: 35 lines of code image-cache-purger/src/main/scala/com/gu/mediaservice/FastlyPurger.scala x: 4 contributors (90d) y: 43 lines of code image-cache-purger/src/main/scala/com/gu/mediaservice/ImageCachePurger.scala x: 4 contributors (90d) y: 62 lines of code kahuna/app/lib/KahunaConfig.scala x: 5 contributors (90d) y: 76 lines of code kahuna/app/views/main.scala.html x: 6 contributors (90d) y: 131 lines of code kahuna/public/js/edits/image-editor.html x: 6 contributors (90d) y: 314 lines of code kahuna/public/js/image/controller.js x: 9 contributors (90d) y: 291 lines of code kahuna/public/js/image/view.html x: 4 contributors (90d) y: 195 lines of code kahuna/public/js/main.js x: 4 contributors (90d) y: 426 lines of code kahuna/public/js/search/results.html x: 7 contributors (90d) y: 240 lines of code kahuna/public/js/search/results.js x: 6 contributors (90d) y: 730 lines of code kahuna/public/js/services/telemetry.ts x: 6 contributors (90d) y: 83 lines of code kahuna/public/js/takedown/controller.ts x: 4 contributors (90d) y: 26 lines of code kahuna/public/js/takedown/delete-from-content-step.tsx x: 4 contributors (90d) y: 218 lines of code kahuna/public/js/takedown/index.ts x: 4 contributors (90d) y: 94 lines of code kahuna/public/js/takedown/takedown-page.tsx x: 4 contributors (90d) y: 120 lines of code kahuna/public/js/takedown/view.html x: 4 contributors (90d) y: 8 lines of code kahuna/public/js/types/image.ts x: 4 contributors (90d) y: 86 lines of code kahuna/public/js/upload/controller.js x: 7 contributors (90d) y: 59 lines of code kahuna/public/js/upload/jobs/required-metadata-editor.html x: 3 contributors (90d) y: 172 lines of code kahuna/public/js/upload/jobs/upload-jobs.js x: 3 contributors (90d) y: 184 lines of code kahuna/public/js/upload/prompt/prompt.html x: 3 contributors (90d) y: 10 lines of code kahuna/public/js/upload/prompt/prompt.js x: 3 contributors (90d) y: 22 lines of code kahuna/public/js/window.ts x: 6 contributors (90d) y: 53 lines of code kahuna/public/stylesheets/main.css x: 11 contributors (90d) y: 2605 lines of code media-api/app/MediaApiComponents.scala x: 5 contributors (90d) y: 46 lines of code media-api/app/controllers/MediaApi.scala x: 7 contributors (90d) y: 711 lines of code media-api/app/controllers/UsageController.scala x: 5 contributors (90d) y: 111 lines of code media-api/app/lib/ImageResponse.scala x: 6 contributors (90d) y: 361 lines of code media-api/app/lib/elasticsearch/ElasticSearch.scala x: 7 contributors (90d) y: 581 lines of code media-api/app/models/UsagesInContent.scala x: 3 contributors (90d) y: 19 lines of code usage/app/controllers/UsageApi.scala x: 3 contributors (90d) y: 382 lines of code kahuna/public/js/components/gr-collections-panel/gr-collections-panel.js x: 3 contributors (90d) y: 255 lines of code kahuna/public/js/components/gr-image-metadata/gr-image-metadata.html x: 5 contributors (90d) y: 960 lines of code kahuna/public/js/components/gr-image-metadata/gr-image-metadata.js x: 3 contributors (90d) y: 561 lines of code kahuna/public/js/components/gr-photoshoot/gr-photoshoot.js x: 3 contributors (90d) y: 88 lines of code kahuna/public/js/components/gr-sort-control/base-sort-control.tsx x: 5 contributors (90d) y: 189 lines of code kahuna/public/js/components/gr-sort-control/gr-extended-sort-control.tsx x: 3 contributors (90d) y: 105 lines of code kahuna/public/js/components/gu-date-range/gu-date-range.js x: 4 contributors (90d) y: 150 lines of code kahuna/public/js/edits/image-editor.js x: 3 contributors (90d) y: 379 lines of code kahuna/public/js/preview/image.js x: 3 contributors (90d) y: 161 lines of code kahuna/public/js/search/query-filter.js x: 5 contributors (90d) y: 71 lines of code kahuna/public/js/upload/view.html x: 5 contributors (90d) y: 26 lines of code media-api/app/lib/elasticsearch/QueryBuilder.scala x: 4 contributors (90d) y: 188 lines of code collections/app/store/CollectionsStore.scala x: 2 contributors (90d) y: 55 lines of code collections/app/store/ImageCollectionsStore.scala x: 2 contributors (90d) y: 43 lines of code common-lib/src/main/scala/com/gu/mediaservice/GridClient.scala x: 2 contributors (90d) y: 229 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/BaseStore.scala x: 3 contributors (90d) y: 51 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/ImageIngestOperations.scala x: 2 contributors (90d) y: 106 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/VectorUtils.scala x: 2 contributors (90d) y: 40 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/AwsClientBuilderUtils.scala x: 2 contributors (90d) y: 21 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/Bedrock.scala x: 2 contributors (90d) y: 79 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/DynamoDB.scala x: 3 contributors (90d) y: 220 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/EC2MetadataUtils.scala x: 2 contributors (90d) y: 8 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/aws/SNS.scala x: 2 contributors (90d) y: 13 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/cleanup/PhotographerRenamer.scala x: 2 contributors (90d) y: 635 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/elasticsearch/ElasticSearchClient.scala x: 2 contributors (90d) y: 168 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/guardian/GuardianUsageRightsConfig.scala x: 3 contributors (90d) y: 633 lines of code common-lib/src/main/scala/com/gu/mediaservice/lib/metrics/CloudWatchMetrics.scala x: 2 contributors (90d) y: 134 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/UsageRights.scala x: 4 contributors (90d) y: 498 lines of code common-lib/src/main/scala/com/gu/mediaservice/model/usage/PrintUsageMetadata.scala x: 3 contributors (90d) y: 73 lines of code image-loader/app/controllers/ImageLoaderController.scala x: 2 contributors (90d) y: 570 lines of code image-loader/app/model/Projector.scala x: 2 contributors (90d) y: 187 lines of code image-loader/app/model/Uploader.scala x: 2 contributors (90d) y: 451 lines of code kahuna/public/js/components/gr-archiver/gr-archiver.js x: 2 contributors (90d) y: 144 lines of code kahuna/public/js/components/gr-image-usage/gr-image-usage.js x: 4 contributors (90d) y: 135 lines of code kahuna/public/js/components/gr-sort-control/gr-sort-control.css x: 3 contributors (90d) y: 142 lines of code kahuna/public/js/components/gr-top-bar/gr-top-bar.css x: 3 contributors (90d) y: 39 lines of code kahuna/public/js/crop/controller.js x: 5 contributors (90d) y: 218 lines of code media-api/app/lib/UsageStore.scala x: 3 contributors (90d) y: 188 lines of code scripts/src/main/scala/com/gu/mediaservice/scripts/EnactS3Changes.scala x: 2 contributors (90d) y: 175 lines of code thrall/app/controllers/ReaperController.scala x: 2 contributors (90d) y: 202 lines of code thrall/app/controllers/ThrallController.scala x: 2 contributors (90d) y: 251 lines of code thrall/app/lib/ThrallConfig.scala x: 2 contributors (90d) y: 69 lines of code thrall/app/lib/elasticsearch/GoodToGoCheck.scala x: 2 contributors (90d) y: 88 lines of code thrall/app/views/index.scala.html x: 2 contributors (90d) y: 132 lines of code usage/app/model/UsageRecord.scala x: 3 contributors (90d) y: 132 lines of code usage/app/model/UsageTable.scala x: 3 contributors (90d) y: 144 lines of code cropper/app/lib/CropStore.scala x: 1 contributors (90d) y: 67 lines of code
2605.0
lines of code
  min: 5.0
  average: 144.0
  25th percentile: 37.0
  median: 73.5
  75th percentile: 174.25
  max: 2605.0
0 11.0
contributors (90d)
min: 1.0 | average: 3.52 | 25th percentile: 2.0 | median: 3.0 | 75th percentile: 4.0 | max: 11.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...