File Size Overall
  • There are 19 files with 990 lines of code.
    • 0 very long files (0 lines of code)
    • 0 long files (0 lines of code)
    • 1 medium size files (242 lines of code)
    • 1 small files (140 lines of code)
    • 17 very small files (608 lines of code)
0% | 0% | 24% | 14% | 61%
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
swift0% | 0% | 24% | 14% | 61%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
Sources0% | 0% | 26% | 15% | 57%
ROOT0% | 0% | 0% | 0% | 100%
Plugins0% | 0% | 0% | 0% | 100%
Longest Files (Top 19)
File# lines# units
ReconConfigListView.swift
in Sources/Recon/Views
242 8
main.swift
in Sources/recon-keygen
140 7
ReconRemoteConfigProvider.swift
in Sources/Recon/Protocols
99 3
Recon+Overrides.swift
in Sources/Recon/Extensions
89 1
ReconConfigValue.swift
in Sources/Recon/Structs
61 -
Recon+TypedValue.swift
in Sources/Recon/Extensions
54 -
41 -
Plugin.swift
in Plugins/ReconKeygenPlugin
40 2
ReconFlag.swift
in Sources/Recon/Property Wrappers
37 -
Recon.swift
in Sources/Recon
36 -
ConfigDecodable+extensions.swift
in Sources/Recon/Extensions
31 -
Recon+Accessors.swift
in Sources/Recon/Extensions
30 -
View+Extensions.swift
in Sources/Recon/Extensions
23 2
ReconRemoteConfigProvider+Validate.swift
in Sources/Recon/Extensions
19 -
OverridesParseError.swift
in Sources/Recon/Errors
13 -
ReconConfigTypeMismatchError.swift
in Sources/Recon/Errors
12 -
ReconConfigValueType.swift
in Sources/Recon/Enums
9 -
ReconConfigKey.swift
in Sources/Recon/Protocols
8 -
ReconConfigSource.swift
in Sources/Recon/Enums
6 -
Large Files That Change Often (Top 19)
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
ReconConfigListView.swift
in Sources/Recon/Views
242 ~1.5k–5k 19 ~30 ~7
ReconRemoteConfigProvider.swift
in Sources/Recon/Protocols
99 ~500–1.5k 11 ~20 ~5
Recon+Overrides.swift
in Sources/Recon/Extensions
89 ~500–1.5k 10 ~20 ~5
main.swift
in Sources/recon-keygen
140 ~700–2k 4 ~50 ~3
ReconFlag.swift
in Sources/Recon/Property Wrappers
37 under 1k 12 ~20 ~2
41 under 1k 6 ~10 ~3
Recon.swift
in Sources/Recon
36 under 1k 4 ~15 ~2
Recon+TypedValue.swift
in Sources/Recon/Extensions
54 ~300–1k 2 ~70 ~1
ConfigDecodable+extensions.swift
in Sources/Recon/Extensions
31 under 1k 2 ~20 ~2
ReconConfigValue.swift
in Sources/Recon/Structs
61 ~300–1k 1 ~70 ~1
Recon+Accessors.swift
in Sources/Recon/Extensions
30 under 1k 2 ~70 ~0
Plugin.swift
in Plugins/ReconKeygenPlugin
40 under 1k 1 ~50 ~1
OverridesParseError.swift
in Sources/Recon/Errors
13 under 1k 2 ~15 ~1
View+Extensions.swift
in Sources/Recon/Extensions
23 under 1k 1 ~30 ~1
ReconRemoteConfigProvider+Validate.swift
in Sources/Recon/Extensions
19 under 1k 1 ~20 ~1
ReconConfigTypeMismatchError.swift
in Sources/Recon/Errors
12 under 1k 1 ~20 ~1
ReconConfigValueType.swift
in Sources/Recon/Enums
9 under 1k 1 ~10 ~1
ReconConfigKey.swift
in Sources/Recon/Protocols
8 under 1k 1 ~10 ~1
ReconConfigSource.swift
in Sources/Recon/Enums
6 under 1k 1 ~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 6)
File# lines# units
ReconConfigListView.swift
in Sources/Recon/Views
242 8
main.swift
in Sources/recon-keygen
140 7
ReconRemoteConfigProvider.swift
in Sources/Recon/Protocols
99 3
Plugin.swift
in Plugins/ReconKeygenPlugin
40 2
View+Extensions.swift
in Sources/Recon/Extensions
23 2
Recon+Overrides.swift
in Sources/Recon/Extensions
89 1
Files With Long Lines (Top 9)

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

File# lines# units# long lines
Recon+Overrides.swift
in Sources/Recon/Extensions
89 1 4
Recon+Accessors.swift
in Sources/Recon/Extensions
30 - 3
main.swift
in Sources/recon-keygen
140 7 2
Recon+TypedValue.swift
in Sources/Recon/Extensions
54 - 2
ReconConfigListView.swift
in Sources/Recon/Views
242 8 2
ReconFlag.swift
in Sources/Recon/Property Wrappers
37 - 2
Recon.swift
in Sources/Recon
36 - 1
ReconConfigValue.swift
in Sources/Recon/Structs
61 - 1
ReconRemoteConfigProvider.swift
in Sources/Recon/Protocols
99 3 1
Correlations

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

Sources/Recon/Recon.swift x: 4 commits (all time) y: 36 lines of code Sources/Recon/Views/ReconConfigListView.swift x: 19 commits (all time) y: 242 lines of code Sources/Recon/Extensions/Recon+Accessors.swift x: 2 commits (all time) y: 30 lines of code Sources/Recon/Extensions/Recon+TypedValue.swift x: 2 commits (all time) y: 54 lines of code Sources/Recon/Protocols/ReconRemoteConfigProvider.swift x: 11 commits (all time) y: 99 lines of code Sources/Recon/Property Wrappers/ReconFlag.swift x: 12 commits (all time) y: 37 lines of code Sources/Recon/Extensions/Recon+Overrides.swift x: 10 commits (all time) y: 89 lines of code Sources/Recon/Errors/OverridesParseError.swift x: 2 commits (all time) y: 13 lines of code Sources/Recon/Extensions/View+Extensions.swift x: 1 commits (all time) y: 23 lines of code Package.swift x: 6 commits (all time) y: 41 lines of code Sources/Recon/Extensions/ReconRemoteConfigProvider+Validate.swift x: 1 commits (all time) y: 19 lines of code Sources/recon-keygen/main.swift x: 4 commits (all time) y: 140 lines of code Sources/Recon/Extensions/ConfigDecodable+extensions.swift x: 2 commits (all time) y: 31 lines of code Sources/Recon/Enums/ReconConfigSource.swift x: 1 commits (all time) y: 6 lines of code Sources/Recon/Enums/ReconConfigValueType.swift x: 1 commits (all time) y: 9 lines of code Sources/Recon/Errors/ReconConfigTypeMismatchError.swift x: 1 commits (all time) y: 12 lines of code Sources/Recon/Protocols/ReconConfigKey.swift x: 1 commits (all time) y: 8 lines of code Sources/Recon/Structs/ReconConfigValue.swift x: 1 commits (all time) y: 61 lines of code Plugins/ReconKeygenPlugin/Plugin.swift x: 1 commits (all time) y: 40 lines of code
242.0
lines of code
  min: 6.0
  average: 52.11
  25th percentile: 13.0
  median: 36.0
  75th percentile: 61.0
  max: 242.0
0 19.0
commits (all time)
min: 1.0 | average: 4.32 | 25th percentile: 1.0 | median: 2.0 | 75th percentile: 6.0 | max: 19.0

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

Sources/Recon/Recon.swift x: 1 contributors (all time) y: 36 lines of code Sources/Recon/Views/ReconConfigListView.swift x: 1 contributors (all time) y: 242 lines of code Sources/Recon/Extensions/Recon+Accessors.swift x: 1 contributors (all time) y: 30 lines of code Sources/Recon/Extensions/Recon+TypedValue.swift x: 1 contributors (all time) y: 54 lines of code Sources/Recon/Protocols/ReconRemoteConfigProvider.swift x: 1 contributors (all time) y: 99 lines of code Sources/Recon/Property Wrappers/ReconFlag.swift x: 1 contributors (all time) y: 37 lines of code Sources/Recon/Extensions/Recon+Overrides.swift x: 1 contributors (all time) y: 89 lines of code Sources/Recon/Errors/OverridesParseError.swift x: 1 contributors (all time) y: 13 lines of code Sources/Recon/Extensions/View+Extensions.swift x: 1 contributors (all time) y: 23 lines of code Package.swift x: 1 contributors (all time) y: 41 lines of code Sources/Recon/Extensions/ReconRemoteConfigProvider+Validate.swift x: 1 contributors (all time) y: 19 lines of code Sources/recon-keygen/main.swift x: 1 contributors (all time) y: 140 lines of code Sources/Recon/Extensions/ConfigDecodable+extensions.swift x: 1 contributors (all time) y: 31 lines of code Sources/Recon/Enums/ReconConfigSource.swift x: 1 contributors (all time) y: 6 lines of code Sources/Recon/Enums/ReconConfigValueType.swift x: 1 contributors (all time) y: 9 lines of code Sources/Recon/Errors/ReconConfigTypeMismatchError.swift x: 1 contributors (all time) y: 12 lines of code Sources/Recon/Protocols/ReconConfigKey.swift x: 1 contributors (all time) y: 8 lines of code Sources/Recon/Structs/ReconConfigValue.swift x: 1 contributors (all time) y: 61 lines of code Plugins/ReconKeygenPlugin/Plugin.swift x: 1 contributors (all time) y: 40 lines of code
242.0
lines of code
  min: 6.0
  average: 52.11
  25th percentile: 13.0
  median: 36.0
  75th percentile: 61.0
  max: 242.0
0 1.0
contributors (all time)
min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.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): 19 points

Sources/Recon/Recon.swift x: 4 commits (90d) y: 36 lines of code Sources/Recon/Views/ReconConfigListView.swift x: 19 commits (90d) y: 242 lines of code Sources/Recon/Extensions/Recon+Accessors.swift x: 2 commits (90d) y: 30 lines of code Sources/Recon/Extensions/Recon+TypedValue.swift x: 2 commits (90d) y: 54 lines of code Sources/Recon/Protocols/ReconRemoteConfigProvider.swift x: 11 commits (90d) y: 99 lines of code Sources/Recon/Property Wrappers/ReconFlag.swift x: 12 commits (90d) y: 37 lines of code Sources/Recon/Extensions/Recon+Overrides.swift x: 10 commits (90d) y: 89 lines of code Sources/Recon/Errors/OverridesParseError.swift x: 2 commits (90d) y: 13 lines of code Sources/Recon/Extensions/View+Extensions.swift x: 1 commits (90d) y: 23 lines of code Package.swift x: 6 commits (90d) y: 41 lines of code Sources/Recon/Extensions/ReconRemoteConfigProvider+Validate.swift x: 1 commits (90d) y: 19 lines of code Sources/recon-keygen/main.swift x: 4 commits (90d) y: 140 lines of code Sources/Recon/Extensions/ConfigDecodable+extensions.swift x: 2 commits (90d) y: 31 lines of code Sources/Recon/Enums/ReconConfigSource.swift x: 1 commits (90d) y: 6 lines of code Sources/Recon/Enums/ReconConfigValueType.swift x: 1 commits (90d) y: 9 lines of code Sources/Recon/Errors/ReconConfigTypeMismatchError.swift x: 1 commits (90d) y: 12 lines of code Sources/Recon/Protocols/ReconConfigKey.swift x: 1 commits (90d) y: 8 lines of code Sources/Recon/Structs/ReconConfigValue.swift x: 1 commits (90d) y: 61 lines of code Plugins/ReconKeygenPlugin/Plugin.swift x: 1 commits (90d) y: 40 lines of code
242.0
lines of code
  min: 6.0
  average: 52.11
  25th percentile: 13.0
  median: 36.0
  75th percentile: 61.0
  max: 242.0
0 19.0
commits (90d)
min: 1.0 | average: 4.32 | 25th percentile: 1.0 | median: 2.0 | 75th percentile: 6.0 | max: 19.0

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

Sources/Recon/Recon.swift x: 1 contributors (90d) y: 36 lines of code Sources/Recon/Views/ReconConfigListView.swift x: 1 contributors (90d) y: 242 lines of code Sources/Recon/Extensions/Recon+Accessors.swift x: 1 contributors (90d) y: 30 lines of code Sources/Recon/Extensions/Recon+TypedValue.swift x: 1 contributors (90d) y: 54 lines of code Sources/Recon/Protocols/ReconRemoteConfigProvider.swift x: 1 contributors (90d) y: 99 lines of code Sources/Recon/Property Wrappers/ReconFlag.swift x: 1 contributors (90d) y: 37 lines of code Sources/Recon/Extensions/Recon+Overrides.swift x: 1 contributors (90d) y: 89 lines of code Sources/Recon/Errors/OverridesParseError.swift x: 1 contributors (90d) y: 13 lines of code Sources/Recon/Extensions/View+Extensions.swift x: 1 contributors (90d) y: 23 lines of code Package.swift x: 1 contributors (90d) y: 41 lines of code Sources/Recon/Extensions/ReconRemoteConfigProvider+Validate.swift x: 1 contributors (90d) y: 19 lines of code Sources/recon-keygen/main.swift x: 1 contributors (90d) y: 140 lines of code Sources/Recon/Extensions/ConfigDecodable+extensions.swift x: 1 contributors (90d) y: 31 lines of code Sources/Recon/Enums/ReconConfigSource.swift x: 1 contributors (90d) y: 6 lines of code Sources/Recon/Enums/ReconConfigValueType.swift x: 1 contributors (90d) y: 9 lines of code Sources/Recon/Errors/ReconConfigTypeMismatchError.swift x: 1 contributors (90d) y: 12 lines of code Sources/Recon/Protocols/ReconConfigKey.swift x: 1 contributors (90d) y: 8 lines of code Sources/Recon/Structs/ReconConfigValue.swift x: 1 contributors (90d) y: 61 lines of code Plugins/ReconKeygenPlugin/Plugin.swift x: 1 contributors (90d) y: 40 lines of code
242.0
lines of code
  min: 6.0
  average: 52.11
  25th percentile: 13.0
  median: 36.0
  75th percentile: 61.0
  max: 242.0
0 1.0
contributors (90d)
min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.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...