File Size Overall
  • There are 10 files with 699 lines of code.
    • 0 very long files (0 lines of code)
    • 0 long files (0 lines of code)
    • 1 medium size files (221 lines of code)
    • 2 small files (322 lines of code)
    • 7 very small files (156 lines of code)
0% | 0% | 31% | 46% | 22%
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% | 31% | 46% | 21%
yaml0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
src0% | 0% | 31% | 46% | 21%
.github0% | 0% | 0% | 0% | 100%
Longest Files (Top 10)
File# lines# units
RecordProcessorImpl.scala
in src/main/scala/com/gu/kinesis
221 18
KinesisSource.scala
in src/main/scala/com/gu/kinesis
196 11
ConsumerConfig.scala
in src/main/scala/com/gu/kinesis
126 6
ConsumerStats.scala
in src/main/scala/com/gu/kinesis
48 11
KinesisRecord.scala
in src/main/scala/com/gu/kinesis
39 2
MaterializerAsValue.scala
in src/main/scala/com/gu/kinesis
35 1
ShardCheckpointConfig.scala
in src/main/scala/com/gu/kinesis
19 1
ShardConsumerId.scala
in src/main/scala/com/gu/kinesis
7 1
dependabot.yml
in .github
6 -
KinesisAppId.scala
in src/main/scala/com/gu/kinesis
2 -
Large Files That Change Often (Top 1)
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
dependabot.yml
in .github
6 under 1k 2 ~10 ~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 8)
File# lines# units
RecordProcessorImpl.scala
in src/main/scala/com/gu/kinesis
221 18
ConsumerStats.scala
in src/main/scala/com/gu/kinesis
48 11
KinesisSource.scala
in src/main/scala/com/gu/kinesis
196 11
ConsumerConfig.scala
in src/main/scala/com/gu/kinesis
126 6
KinesisRecord.scala
in src/main/scala/com/gu/kinesis
39 2
MaterializerAsValue.scala
in src/main/scala/com/gu/kinesis
35 1
ShardConsumerId.scala
in src/main/scala/com/gu/kinesis
7 1
ShardCheckpointConfig.scala
in src/main/scala/com/gu/kinesis
19 1
Files With Long Lines (Top 0)

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

File# lines# units# long lines
Correlations

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

.github/dependabot.yml x: 2 commits (all time) y: 6 lines of code src/main/scala/com/gu/kinesis/KinesisSource.scala x: 3 commits (all time) y: 196 lines of code src/main/scala/com/gu/kinesis/ConsumerConfig.scala x: 1 commits (all time) y: 126 lines of code src/main/scala/com/gu/kinesis/ConsumerStats.scala x: 1 commits (all time) y: 48 lines of code src/main/scala/com/gu/kinesis/KinesisAppId.scala x: 1 commits (all time) y: 2 lines of code src/main/scala/com/gu/kinesis/KinesisRecord.scala x: 1 commits (all time) y: 39 lines of code src/main/scala/com/gu/kinesis/MaterializerAsValue.scala x: 1 commits (all time) y: 35 lines of code src/main/scala/com/gu/kinesis/RecordProcessorImpl.scala x: 1 commits (all time) y: 221 lines of code src/main/scala/com/gu/kinesis/ShardCheckpointConfig.scala x: 1 commits (all time) y: 19 lines of code src/main/scala/com/gu/kinesis/ShardConsumerId.scala x: 1 commits (all time) y: 7 lines of code
221.0
lines of code
  min: 2.0
  average: 69.9
  25th percentile: 6.75
  median: 37.0
  75th percentile: 143.5
  max: 221.0
0 3.0
commits (all time)
min: 1.0 | average: 1.3 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.25 | max: 3.0

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

.github/dependabot.yml x: 2 contributors (all time) y: 6 lines of code src/main/scala/com/gu/kinesis/KinesisSource.scala x: 2 contributors (all time) y: 196 lines of code src/main/scala/com/gu/kinesis/ConsumerConfig.scala x: 1 contributors (all time) y: 126 lines of code src/main/scala/com/gu/kinesis/ConsumerStats.scala x: 1 contributors (all time) y: 48 lines of code src/main/scala/com/gu/kinesis/KinesisAppId.scala x: 1 contributors (all time) y: 2 lines of code src/main/scala/com/gu/kinesis/KinesisRecord.scala x: 1 contributors (all time) y: 39 lines of code src/main/scala/com/gu/kinesis/MaterializerAsValue.scala x: 1 contributors (all time) y: 35 lines of code src/main/scala/com/gu/kinesis/RecordProcessorImpl.scala x: 1 contributors (all time) y: 221 lines of code src/main/scala/com/gu/kinesis/ShardCheckpointConfig.scala x: 1 contributors (all time) y: 19 lines of code src/main/scala/com/gu/kinesis/ShardConsumerId.scala x: 1 contributors (all time) y: 7 lines of code
221.0
lines of code
  min: 2.0
  average: 69.9
  25th percentile: 6.75
  median: 37.0
  75th percentile: 143.5
  max: 221.0
0 2.0
contributors (all time)
min: 1.0 | average: 1.2 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.25 | max: 2.0

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

No data for "commits (30d)" vs. "lines of code".

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

No data for "contributors (30d)" vs. "lines of code".


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

No data for "commits (90d)" vs. "lines of code".

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

No data for "contributors (90d)" vs. "lines of code".

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...