File Size Overall
  • There are 16 files with 820 lines of code.
    • 0 very long files (0 lines of code)
    • 0 long files (0 lines of code)
    • 1 medium size files (216 lines of code)
    • 2 small files (280 lines of code)
    • 13 very small files (324 lines of code)
0% | 0% | 26% | 34% | 39%
Legend:
1001+
501-1000
201-500
101-200
1-100


explore: grouped by folders | grouped by size | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
scala0% | 0% | 26% | 34% | 39%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
atom-publisher-lib0% | 0% | 30% | 39% | 30%
atom-manager-play-lib0% | 0% | 0% | 0% | 100%
project0% | 0% | 0% | 0% | 100%
Longest Files (Top 16)
File# lines# units
DynamoDataStoreV2.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/data
216 12
DynamoReindexDataStoreV2.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/reindex
154 10
KinesisAtomReindexerV2.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/reindex
126 6
ReindexController.scala
in atom-manager-play-lib/src/main/scala/com.gu.atom/play
57 4
AtomAPIActions.scala
in atom-manager-play-lib/src/main/scala/com.gu.atom/play
45 2
JsonSupport.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/util
41 2
AtomUtils.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/util
36 2
DataStore.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/data
33 1
KinesisAtomPublisherV2.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/publish
26 1
ReindexJob.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/reindex
23 -
ThriftSerializer.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/publish
17 1
ReindexDataStore.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/reindex
10 -
AtomReindexer.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/reindex
10 -
BuildVars.scala
in project
9 -
AtomSerializer.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/data
9 -
AtomPublisher.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/publish
8 -
Large Files That Change Often (Top 12)
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
DynamoDataStoreV2.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/data
216 ~1.5k–5k 14 ~70 ~3
KinesisAtomReindexerV2.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/reindex
126 ~700–2k 5 ~70 ~2
DynamoReindexDataStoreV2.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/reindex
154 ~1k–3k 4 ~100 ~2
BuildVars.scala
in project
9 under 1k 23 ~2 ~3
ReindexController.scala
in atom-manager-play-lib/src/main/scala/com.gu.atom/play
57 ~300–1k 2 ~70 ~1
JsonSupport.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/util
41 under 1k 2 ~20 ~2
KinesisAtomPublisherV2.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/publish
26 under 1k 3 ~20 ~1
ReindexJob.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/reindex
23 under 1k 3 ~20 ~1
DataStore.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/data
33 under 1k 2 ~20 ~2
AtomSerializer.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/data
9 under 1k 4 ~7 ~1
AtomReindexer.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/reindex
10 under 1k 2 ~20 ~1
ReindexDataStore.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/reindex
10 under 1k 2 ~15 ~1

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 10)
File# lines# units
DynamoDataStoreV2.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/data
216 12
DynamoReindexDataStoreV2.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/reindex
154 10
KinesisAtomReindexerV2.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/reindex
126 6
ReindexController.scala
in atom-manager-play-lib/src/main/scala/com.gu.atom/play
57 4
AtomAPIActions.scala
in atom-manager-play-lib/src/main/scala/com.gu.atom/play
45 2
AtomUtils.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/util
36 2
JsonSupport.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/util
41 2
KinesisAtomPublisherV2.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/publish
26 1
ThriftSerializer.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/publish
17 1
DataStore.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/data
33 1
Files With Long Lines (Top 5)

There are 5 files with lines longer than 120 characters. In total, there are 9 long lines.

File# lines# units# long lines
DynamoDataStoreV2.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/data
216 12 3
DataStore.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/data
33 1 3
AtomAPIActions.scala
in atom-manager-play-lib/src/main/scala/com.gu.atom/play
45 2 1
JsonSupport.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/util
41 2 1
KinesisAtomReindexerV2.scala
in atom-publisher-lib/src/main/scala/com/gu/atom/reindex
126 6 1
Correlations

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

atom-publisher-lib/src/main/scala/com/gu/atom/util/JsonSupport.scala x: 8 commits (all time) y: 41 lines of code project/BuildVars.scala x: 140 commits (all time) y: 9 lines of code atom-manager-play-lib/src/main/scala/com.gu.atom/play/ReindexController.scala x: 2 commits (all time) y: 57 lines of code atom-publisher-lib/src/main/scala/com/gu/atom/data/DataStore.scala x: 36 commits (all time) y: 33 lines of code atom-publisher-lib/src/main/scala/com/gu/atom/data/DynamoDataStoreV2.scala x: 14 commits (all time) y: 216 lines of code atom-publisher-lib/src/main/scala/com/gu/atom/reindex/AtomReindexer.scala x: 2 commits (all time) y: 10 lines of code atom-publisher-lib/src/main/scala/com/gu/atom/reindex/DynamoReindexDataStoreV2.scala x: 4 commits (all time) y: 154 lines of code atom-publisher-lib/src/main/scala/com/gu/atom/reindex/KinesisAtomReindexerV2.scala x: 5 commits (all time) y: 126 lines of code atom-publisher-lib/src/main/scala/com/gu/atom/reindex/ReindexJob.scala x: 3 commits (all time) y: 23 lines of code atom-publisher-lib/src/main/scala/com/gu/atom/data/AtomSerializer.scala x: 4 commits (all time) y: 9 lines of code atom-publisher-lib/src/main/scala/com/gu/atom/publish/KinesisAtomPublisherV2.scala x: 3 commits (all time) y: 26 lines of code atom-manager-play-lib/src/main/scala/com.gu.atom/play/AtomAPIActions.scala x: 8 commits (all time) y: 45 lines of code
216.0
lines of code
  min: 9.0
  average: 58.38
  25th percentile: 10.0
  median: 33.0
  75th percentile: 91.5
  max: 216.0
0 140.0
commits (all time)
min: 2.0 | average: 17.77 | 25th percentile: 2.5 | median: 4.0 | 75th percentile: 11.0 | max: 140.0

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

atom-publisher-lib/src/main/scala/com/gu/atom/util/JsonSupport.scala x: 4 contributors (all time) y: 41 lines of code project/BuildVars.scala x: 41 contributors (all time) y: 9 lines of code atom-manager-play-lib/src/main/scala/com.gu.atom/play/ReindexController.scala x: 2 contributors (all time) y: 57 lines of code atom-publisher-lib/src/main/scala/com/gu/atom/data/DataStore.scala x: 7 contributors (all time) y: 33 lines of code atom-publisher-lib/src/main/scala/com/gu/atom/data/DynamoDataStoreV2.scala x: 3 contributors (all time) y: 216 lines of code atom-publisher-lib/src/main/scala/com/gu/atom/reindex/AtomReindexer.scala x: 2 contributors (all time) y: 10 lines of code atom-publisher-lib/src/main/scala/com/gu/atom/reindex/DynamoReindexDataStoreV2.scala x: 2 contributors (all time) y: 154 lines of code atom-publisher-lib/src/main/scala/com/gu/atom/reindex/KinesisAtomReindexerV2.scala x: 2 contributors (all time) y: 126 lines of code atom-publisher-lib/src/main/scala/com/gu/atom/reindex/ReindexJob.scala x: 2 contributors (all time) y: 23 lines of code atom-publisher-lib/src/main/scala/com/gu/atom/data/AtomSerializer.scala x: 1 contributors (all time) y: 9 lines of code atom-publisher-lib/src/main/scala/com/gu/atom/publish/KinesisAtomPublisherV2.scala x: 1 contributors (all time) y: 26 lines of code atom-manager-play-lib/src/main/scala/com.gu.atom/play/AtomAPIActions.scala x: 5 contributors (all time) y: 45 lines of code
216.0
lines of code
  min: 9.0
  average: 58.38
  25th percentile: 10.0
  median: 33.0
  75th percentile: 91.5
  max: 216.0
0 41.0
contributors (all time)
min: 1.0 | average: 5.69 | 25th percentile: 2.0 | median: 2.0 | 75th percentile: 4.5 | max: 41.0

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

atom-publisher-lib/src/main/scala/com/gu/atom/util/JsonSupport.scala x: 1 commits (30d) y: 41 lines of code project/BuildVars.scala x: 2 commits (30d) y: 9 lines of code
41.0
lines of code
  min: 9.0
  average: 25.0
  25th percentile: 9.0
  median: 25.0
  75th percentile: 41.0
  max: 41.0
0 2.0
commits (30d)
min: 1.0 | average: 1.5 | 25th percentile: 1.0 | median: 1.5 | 75th percentile: 2.0 | max: 2.0

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

atom-publisher-lib/src/main/scala/com/gu/atom/util/JsonSupport.scala x: 1 contributors (30d) y: 41 lines of code project/BuildVars.scala x: 2 contributors (30d) y: 9 lines of code
41.0
lines of code
  min: 9.0
  average: 25.0
  25th percentile: 9.0
  median: 25.0
  75th percentile: 41.0
  max: 41.0
0 2.0
contributors (30d)
min: 1.0 | average: 1.5 | 25th percentile: 1.0 | median: 1.5 | 75th percentile: 2.0 | max: 2.0

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

atom-publisher-lib/src/main/scala/com/gu/atom/util/JsonSupport.scala x: 2 commits (90d) y: 41 lines of code project/BuildVars.scala x: 3 commits (90d) y: 9 lines of code
41.0
lines of code
  min: 9.0
  average: 25.0
  25th percentile: 9.0
  median: 25.0
  75th percentile: 41.0
  max: 41.0
0 3.0
commits (90d)
min: 2.0 | average: 2.5 | 25th percentile: 2.0 | median: 2.5 | 75th percentile: 3.0 | max: 3.0

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

atom-publisher-lib/src/main/scala/com/gu/atom/util/JsonSupport.scala x: 2 contributors (90d) y: 41 lines of code project/BuildVars.scala x: 2 contributors (90d) y: 9 lines of code
41.0
lines of code
  min: 9.0
  average: 25.0
  25th percentile: 9.0
  median: 25.0
  75th percentile: 41.0
  max: 41.0
0 2.0
contributors (90d)
min: 2.0 | average: 2.0 | 25th percentile: 2.0 | median: 2.0 | 75th percentile: 2.0 | max: 2.0
About This Analysis
  • File size measurements show the distribution of size of files.
  • Files are classified in four categories based on their size (lines of code): 1-100 (very small files), 101-200 (small files), 201-500 (medium size files), 501-1000 (long files), 1001+(very long files).
  • It is a good practice to keep files small. Long files may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...