File Size Overall
  • There are 9 files with 1,762 lines of code.
    • 1 very long files (1,115 lines of code)
    • 0 long files (0 lines of code)
    • 2 medium size files (436 lines of code)
    • 0 small files (0 lines of code)
    • 6 very small files (211 lines of code)
63% | 0% | 24% | 0% | 11%
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
thrift91% | 0% | 0% | 0% | 8%
scala0% | 0% | 80% | 0% | 19%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
models91% | 0% | 0% | 0% | 8%
json0% | 0% | 97% | 0% | 2%
benchmarks0% | 0% | 0% | 0% | 100%
Longest Files (Top 9)
File# lines# units
v1.thrift
in models/src/main/thrift/content
1115 -
CirceDecoders.scala
in json/src/main/scala/com/gu/contentapi/json
235 3
CirceEncoders.scala
in json/src/main/scala/com/gu/contentapi/json
201 2
JsonDecodeBenchmark.scala
in benchmarks/src/main/scala/benchmark
94 5
event.thrift
in models/src/main/thrift/events/crier
40 -
schema_org.thrift
in models/src/main/thrift/content
37 -
auxiliaryAtomEvent.thrift
in models/src/main/thrift/events/flexible
15 -
event.thrift
in models/src/main/thrift/events/fastly
13 -
CapiModelEnrichment.scala
in json/src/main/scala/com/gu/contentapi/utils
12 1
Large Files That Change Often (Top 4)
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
v1.thrift
in models/src/main/thrift/content
1115 ~7k–20k 39 ~20 ~50
CirceDecoders.scala
in json/src/main/scala/com/gu/contentapi/json
235 ~1.5k–5k 17 ~15 ~15
CirceEncoders.scala
in json/src/main/scala/com/gu/contentapi/json
201 ~1k–3k 18 ~10 ~15
JsonDecodeBenchmark.scala
in benchmarks/src/main/scala/benchmark
94 ~500–1.5k 3 ~50 ~2

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 4)
File# lines# units
JsonDecodeBenchmark.scala
in benchmarks/src/main/scala/benchmark
94 5
CirceDecoders.scala
in json/src/main/scala/com/gu/contentapi/json
235 3
CirceEncoders.scala
in json/src/main/scala/com/gu/contentapi/json
201 2
CapiModelEnrichment.scala
in json/src/main/scala/com/gu/contentapi/utils
12 1
Files With Long Lines (Top 3)

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

File# lines# units# long lines
CirceEncoders.scala
in json/src/main/scala/com/gu/contentapi/json
201 2 3
CapiModelEnrichment.scala
in json/src/main/scala/com/gu/contentapi/utils
12 1 1
CirceDecoders.scala
in json/src/main/scala/com/gu/contentapi/json
235 3 1
Correlations

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

json/src/main/scala/com/gu/contentapi/json/CirceDecoders.scala x: 76 commits (all time) y: 235 lines of code json/src/main/scala/com/gu/contentapi/json/CirceEncoders.scala x: 66 commits (all time) y: 201 lines of code models/src/main/thrift/content/v1.thrift x: 286 commits (all time) y: 1115 lines of code benchmarks/src/main/scala/benchmark/JsonDecodeBenchmark.scala x: 11 commits (all time) y: 94 lines of code models/src/main/thrift/content/schema_org.thrift x: 4 commits (all time) y: 37 lines of code models/src/main/thrift/events/fastly/event.thrift x: 9 commits (all time) y: 13 lines of code models/src/main/thrift/events/crier/event.thrift x: 19 commits (all time) y: 40 lines of code models/src/main/thrift/events/flexible/auxiliaryAtomEvent.thrift x: 4 commits (all time) y: 15 lines of code json/src/main/scala/com/gu/contentapi/utils/CapiModelEnrichment.scala x: 5 commits (all time) y: 12 lines of code
1115.0
lines of code
  min: 12.0
  average: 195.78
  25th percentile: 14.0
  median: 40.0
  75th percentile: 218.0
  max: 1115.0
0 286.0
commits (all time)
min: 4.0 | average: 53.33 | 25th percentile: 4.5 | median: 11.0 | 75th percentile: 71.0 | max: 286.0

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

json/src/main/scala/com/gu/contentapi/json/CirceDecoders.scala x: 20 contributors (all time) y: 235 lines of code json/src/main/scala/com/gu/contentapi/json/CirceEncoders.scala x: 20 contributors (all time) y: 201 lines of code models/src/main/thrift/content/v1.thrift x: 65 contributors (all time) y: 1115 lines of code benchmarks/src/main/scala/benchmark/JsonDecodeBenchmark.scala x: 4 contributors (all time) y: 94 lines of code models/src/main/thrift/content/schema_org.thrift x: 1 contributors (all time) y: 37 lines of code models/src/main/thrift/events/fastly/event.thrift x: 3 contributors (all time) y: 13 lines of code models/src/main/thrift/events/crier/event.thrift x: 8 contributors (all time) y: 40 lines of code models/src/main/thrift/events/flexible/auxiliaryAtomEvent.thrift x: 2 contributors (all time) y: 15 lines of code json/src/main/scala/com/gu/contentapi/utils/CapiModelEnrichment.scala x: 2 contributors (all time) y: 12 lines of code
1115.0
lines of code
  min: 12.0
  average: 195.78
  25th percentile: 14.0
  median: 40.0
  75th percentile: 218.0
  max: 1115.0
0 65.0
contributors (all time)
min: 1.0 | average: 13.89 | 25th percentile: 2.0 | median: 4.0 | 75th percentile: 20.0 | max: 65.0

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

json/src/main/scala/com/gu/contentapi/json/CirceDecoders.scala x: 3 commits (30d) y: 235 lines of code json/src/main/scala/com/gu/contentapi/json/CirceEncoders.scala x: 3 commits (30d) y: 201 lines of code models/src/main/thrift/content/v1.thrift x: 6 commits (30d) y: 1115 lines of code
1115.0
lines of code
  min: 201.0
  average: 517.0
  25th percentile: 201.0
  median: 235.0
  75th percentile: 1115.0
  max: 1115.0
0 6.0
commits (30d)
min: 3.0 | average: 4.0 | 25th percentile: 3.0 | median: 3.0 | 75th percentile: 6.0 | max: 6.0

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

json/src/main/scala/com/gu/contentapi/json/CirceDecoders.scala x: 2 contributors (30d) y: 235 lines of code json/src/main/scala/com/gu/contentapi/json/CirceEncoders.scala x: 2 contributors (30d) y: 201 lines of code models/src/main/thrift/content/v1.thrift x: 4 contributors (30d) y: 1115 lines of code
1115.0
lines of code
  min: 201.0
  average: 517.0
  25th percentile: 201.0
  median: 235.0
  75th percentile: 1115.0
  max: 1115.0
0 4.0
contributors (30d)
min: 2.0 | average: 2.67 | 25th percentile: 2.0 | median: 2.0 | 75th percentile: 4.0 | max: 4.0

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

json/src/main/scala/com/gu/contentapi/json/CirceDecoders.scala x: 6 commits (90d) y: 235 lines of code json/src/main/scala/com/gu/contentapi/json/CirceEncoders.scala x: 6 commits (90d) y: 201 lines of code models/src/main/thrift/content/v1.thrift x: 12 commits (90d) y: 1115 lines of code benchmarks/src/main/scala/benchmark/JsonDecodeBenchmark.scala x: 3 commits (90d) y: 94 lines of code
1115.0
lines of code
  min: 94.0
  average: 411.25
  25th percentile: 120.75
  median: 218.0
  75th percentile: 895.0
  max: 1115.0
0 12.0
commits (90d)
min: 3.0 | average: 6.75 | 25th percentile: 3.75 | median: 6.0 | 75th percentile: 10.5 | max: 12.0

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

json/src/main/scala/com/gu/contentapi/json/CirceDecoders.scala x: 5 contributors (90d) y: 235 lines of code json/src/main/scala/com/gu/contentapi/json/CirceEncoders.scala x: 5 contributors (90d) y: 201 lines of code models/src/main/thrift/content/v1.thrift x: 8 contributors (90d) y: 1115 lines of code benchmarks/src/main/scala/benchmark/JsonDecodeBenchmark.scala x: 2 contributors (90d) y: 94 lines of code
1115.0
lines of code
  min: 94.0
  average: 411.25
  25th percentile: 120.75
  median: 218.0
  75th percentile: 895.0
  max: 1115.0
0 8.0
contributors (90d)
min: 2.0 | average: 5.0 | 25th percentile: 2.75 | median: 5.0 | 75th percentile: 7.25 | max: 8.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...