facebookincubator / ktfmt
File Size

The distribution of size of files (measured in lines of code).

Intro
  • 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...
File Size Overall
  • There are 45 files with 10,869 lines of code.
    • 2 very long files (7,515 lines of code)
    • 0 long files (0 lines of code)
    • 3 medium size files (737 lines of codeclsfd_ftr_w_mp_ins)
    • 12 small files (1,670 lines of code)
    • 28 very small files (947 lines of code)
69% | 0% | 6% | 15% | 8%
Legend:
1001+
501-1000
201-500
101-200
1-100


explore: zoomable circles | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
css92% | 0% | 7% | 0% | 0%
kt52% | 0% | 0% | 28% | 18%
html0% | 0% | 100% | 0% | 0%
java0% | 0% | 0% | 70% | 29%
js0% | 0% | 0% | 100% | 0%
kts0% | 0% | 0% | 0% | 100%
yaml0% | 0% | 0% | 0% | 100%
xml0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
website/lib100% | 0% | 0% | 0% | 0%
core/src/main/java/com/facebook/ktfmt/format68% | 0% | 0% | 15% | 15%
website0% | 0% | 79% | 20% | 0%
website/index0% | 0% | 64% | 35% | 0%
core/src/main/java/com/facebook/ktfmt/kdoc0% | 0% | 0% | 86% | 13%
ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij0% | 0% | 0% | 70% | 29%
core/src/main/java/com/facebook/ktfmt/cli0% | 0% | 0% | 75% | 24%
core/src/main/java/com/facebook/ktfmt/debughelpers0% | 0% | 0% | 0% | 100%
online_formatter0% | 0% | 0% | 0% | 100%
ktfmt_idea_plugin0% | 0% | 0% | 0% | 100%
online_formatter/src/main/kotlin0% | 0% | 0% | 0% | 100%
ktfmt_idea_plugin/src/main/resources/META-INF0% | 0% | 0% | 0% | 100%
Longest Files (Top 45)
File# lines# units
bootstrap-cosmo.css
in website/lib
5707 -
KotlinInputAstVisitor.kt
in core/src/main/java/com/facebook/ktfmt/format
1808 80
index.html
in website
291 -
all.css
in website
236 -
index.css
in website/index
210 -
CodeStyleManagerDecorator.java
in ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij
179 33
KotlinInput.kt
in core/src/main/java/com/facebook/ktfmt/format
163 1
KDocWriter.kt
in core/src/main/java/com/facebook/ktfmt/kdoc
161 18
KtfmtConfigurable.java
in ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij
159 14
KDocFormatter.kt
in core/src/main/java/com/facebook/ktfmt/kdoc
152 1
gulpfile.js
in website
133 11
KDocCommentsHelper.kt
in core/src/main/java/com/facebook/ktfmt/kdoc
128 1
Formatter.kt
in core/src/main/java/com/facebook/ktfmt/format
127 1
RedundantImportDetector.kt
in core/src/main/java/com/facebook/ktfmt/format
126 5
Main.kt
in core/src/main/java/com/facebook/ktfmt/cli
125 3
index.js
in website/index
115 12
KtfmtCodeStyleManager.java
in ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij
102 9
TypeNameClassifier.kt
in core/src/main/java/com/facebook/ktfmt/format
93 5
Tokenizer.kt
in core/src/main/java/com/facebook/ktfmt/format
83 1
KtfmtSettings.java
in ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij
71 11
OpsDebug.kt
in core/src/main/java/com/facebook/ktfmt/debughelpers
62 3
RedundantSemicolonDetector.kt
in core/src/main/java/com/facebook/ktfmt/format
50 1
RedundantElementRemover.kt
in core/src/main/java/com/facebook/ktfmt/format
46 5
Parser.kt
in core/src/main/java/com/facebook/ktfmt/format
42 1
build.gradle.kts
in ktfmt_idea_plugin
41 -
main.kt
in online_formatter/src/main/kotlin
41 1
ParsedArgs.kt
in core/src/main/java/com/facebook/ktfmt/cli
40 2
build.gradle.kts
in online_formatter
37 -
KotlinTok.kt
in core/src/main/java/com/facebook/ktfmt/format
36 1
InitialConfigurationProjectManagerListener.java
in ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij
35 2
KtfmtInstaller.java
in ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij
30 3
format.yaml
in online_formatter
29 -
KDocToken.kt
in core/src/main/java/com/facebook/ktfmt/kdoc
25 -
NestingCounter.kt
in core/src/main/java/com/facebook/ktfmt/kdoc
25 5
UiFormatterStyle.java
in ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij
24 2
FormatterUtil.java
in ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij
23 3
plugin.xml
in ktfmt_idea_plugin/src/main/resources/META-INF
22 -
Escaping.kt
in core/src/main/java/com/facebook/ktfmt/kdoc
21 1
KotlinToken.kt
in core/src/main/java/com/facebook/ktfmt/format
20 1
FormattingOptions.kt
in core/src/main/java/com/facebook/ktfmt/format
18 -
PrintAstVisitor.kt
in core/src/main/java/com/facebook/ktfmt/debughelpers
13 1
WhitespaceTombstones.kt
in core/src/main/java/com/facebook/ktfmt/format
13 2
ParseError.kt
in core/src/main/java/com/facebook/ktfmt/format
5 -
settings.gradle.kts
in ktfmt_idea_plugin
1 -
settings.gradle.kts
in online_formatter
1 -
Files With Most Units (Top 32)
File# lines# units
KotlinInputAstVisitor.kt
in core/src/main/java/com/facebook/ktfmt/format
1808 80
CodeStyleManagerDecorator.java
in ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij
179 33
KDocWriter.kt
in core/src/main/java/com/facebook/ktfmt/kdoc
161 18
KtfmtConfigurable.java
in ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij
159 14
index.js
in website/index
115 12
gulpfile.js
in website
133 11
KtfmtSettings.java
in ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij
71 11
KtfmtCodeStyleManager.java
in ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij
102 9
TypeNameClassifier.kt
in core/src/main/java/com/facebook/ktfmt/format
93 5
RedundantImportDetector.kt
in core/src/main/java/com/facebook/ktfmt/format
126 5
RedundantElementRemover.kt
in core/src/main/java/com/facebook/ktfmt/format
46 5
NestingCounter.kt
in core/src/main/java/com/facebook/ktfmt/kdoc
25 5
Main.kt
in core/src/main/java/com/facebook/ktfmt/cli
125 3
OpsDebug.kt
in core/src/main/java/com/facebook/ktfmt/debughelpers
62 3
KtfmtInstaller.java
in ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij
30 3
FormatterUtil.java
in ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij
23 3
ParsedArgs.kt
in core/src/main/java/com/facebook/ktfmt/cli
40 2
WhitespaceTombstones.kt
in core/src/main/java/com/facebook/ktfmt/format
13 2
UiFormatterStyle.java
in ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij
24 2
InitialConfigurationProjectManagerListener.java
in ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij
35 2
PrintAstVisitor.kt
in core/src/main/java/com/facebook/ktfmt/debughelpers
13 1
KotlinInput.kt
in core/src/main/java/com/facebook/ktfmt/format
163 1
KotlinTok.kt
in core/src/main/java/com/facebook/ktfmt/format
36 1
Tokenizer.kt
in core/src/main/java/com/facebook/ktfmt/format
83 1
Parser.kt
in core/src/main/java/com/facebook/ktfmt/format
42 1
RedundantSemicolonDetector.kt
in core/src/main/java/com/facebook/ktfmt/format
50 1
KotlinToken.kt
in core/src/main/java/com/facebook/ktfmt/format
20 1
Formatter.kt
in core/src/main/java/com/facebook/ktfmt/format
127 1
Escaping.kt
in core/src/main/java/com/facebook/ktfmt/kdoc
21 1
KDocCommentsHelper.kt
in core/src/main/java/com/facebook/ktfmt/kdoc
128 1
KDocFormatter.kt
in core/src/main/java/com/facebook/ktfmt/kdoc
152 1
main.kt
in online_formatter/src/main/kotlin
41 1
Files With Long Lines (Top 4)

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

File# lines# units# long lines
bootstrap-cosmo.css
in website/lib
5707 - 47
index.html
in website
291 - 3
Main.kt
in core/src/main/java/com/facebook/ktfmt/cli
125 3 1
all.css
in website
236 - 1
Correlations

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

core/src/main/java/com/facebook/ktfmt/format/Parser.kt x: 5 commits (all time) y: 42 lines of code core/src/main/java/com/facebook/ktfmt/format/KotlinInputAstVisitor.kt x: 25 commits (all time) y: 1808 lines of code core/src/main/java/com/facebook/ktfmt/format/RedundantSemicolonDetector.kt x: 3 commits (all time) y: 50 lines of code core/src/main/java/com/facebook/ktfmt/cli/Main.kt x: 8 commits (all time) y: 125 lines of code core/src/main/java/com/facebook/ktfmt/kdoc/KDocWriter.kt x: 12 commits (all time) y: 161 lines of code website/gulpfile.js x: 3 commits (all time) y: 133 lines of code core/src/main/java/com/facebook/ktfmt/format/RedundantElementRemover.kt x: 4 commits (all time) y: 46 lines of code core/src/main/java/com/facebook/ktfmt/debughelpers/OpsDebug.kt x: 2 commits (all time) y: 62 lines of code core/src/main/java/com/facebook/ktfmt/debughelpers/PrintAstVisitor.kt x: 2 commits (all time) y: 13 lines of code core/src/main/java/com/facebook/ktfmt/format/KotlinInput.kt x: 3 commits (all time) y: 163 lines of code core/src/main/java/com/facebook/ktfmt/format/KotlinTok.kt x: 2 commits (all time) y: 36 lines of code core/src/main/java/com/facebook/ktfmt/format/RedundantImportDetector.kt x: 2 commits (all time) y: 126 lines of code core/src/main/java/com/facebook/ktfmt/format/Tokenizer.kt x: 3 commits (all time) y: 83 lines of code core/src/main/java/com/facebook/ktfmt/format/WhitespaceTombstones.kt x: 3 commits (all time) y: 13 lines of code ktfmt_idea_plugin/build.gradle.kts x: 17 commits (all time) y: 41 lines of code ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij/FormatterUtil.java x: 8 commits (all time) y: 23 lines of code online_formatter/build.gradle.kts x: 3 commits (all time) y: 37 lines of code website/all.css x: 2 commits (all time) y: 236 lines of code website/index/index.css x: 2 commits (all time) y: 210 lines of code core/src/main/java/com/facebook/ktfmt/kdoc/KDocFormatter.kt x: 22 commits (all time) y: 152 lines of code ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij/UiFormatterStyle.java x: 4 commits (all time) y: 24 lines of code core/src/main/java/com/facebook/ktfmt/format/TypeNameClassifier.kt x: 1 commits (all time) y: 93 lines of code core/src/main/java/com/facebook/ktfmt/kdoc/KDocToken.kt x: 1 commits (all time) y: 25 lines of code website/index.html x: 1 commits (all time) y: 291 lines of code website/lib/bootstrap-cosmo.css x: 1 commits (all time) y: 5707 lines of code core/src/main/java/com/facebook/ktfmt/kdoc/KDocCommentsHelper.kt x: 4 commits (all time) y: 128 lines of code ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij/KtfmtCodeStyleManager.java x: 2 commits (all time) y: 102 lines of code ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij/KtfmtConfigurable.java x: 2 commits (all time) y: 159 lines of code ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij/KtfmtSettings.java x: 2 commits (all time) y: 71 lines of code ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij/CodeStyleManagerDecorator.java x: 1 commits (all time) y: 179 lines of code
5707.0
lines of code
  min: 1.0
  average: 241.53
  25th percentile: 24.5
  median: 46.0
  75th percentile: 130.5
  max: 5707.0
0 25.0
commits (all time)
min: 1.0 | average: 4.22 | 25th percentile: 2.0 | median: 2.0 | 75th percentile: 4.0 | max: 25.0

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

core/src/main/java/com/facebook/ktfmt/format/Parser.kt x: 3 contributors (all time) y: 42 lines of code core/src/main/java/com/facebook/ktfmt/format/KotlinInputAstVisitor.kt x: 5 contributors (all time) y: 1808 lines of code core/src/main/java/com/facebook/ktfmt/format/RedundantSemicolonDetector.kt x: 1 contributors (all time) y: 50 lines of code core/src/main/java/com/facebook/ktfmt/cli/Main.kt x: 4 contributors (all time) y: 125 lines of code core/src/main/java/com/facebook/ktfmt/kdoc/KDocWriter.kt x: 4 contributors (all time) y: 161 lines of code website/gulpfile.js x: 2 contributors (all time) y: 133 lines of code core/src/main/java/com/facebook/ktfmt/format/RedundantElementRemover.kt x: 3 contributors (all time) y: 46 lines of code core/src/main/java/com/facebook/ktfmt/debughelpers/OpsDebug.kt x: 2 contributors (all time) y: 62 lines of code core/src/main/java/com/facebook/ktfmt/debughelpers/PrintAstVisitor.kt x: 2 contributors (all time) y: 13 lines of code core/src/main/java/com/facebook/ktfmt/format/KotlinInput.kt x: 2 contributors (all time) y: 163 lines of code core/src/main/java/com/facebook/ktfmt/format/KotlinTok.kt x: 2 contributors (all time) y: 36 lines of code core/src/main/java/com/facebook/ktfmt/format/Tokenizer.kt x: 2 contributors (all time) y: 83 lines of code core/src/main/java/com/facebook/ktfmt/kdoc/Escaping.kt x: 3 contributors (all time) y: 21 lines of code ktfmt_idea_plugin/build.gradle.kts x: 4 contributors (all time) y: 41 lines of code ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij/FormatterUtil.java x: 5 contributors (all time) y: 23 lines of code website/all.css x: 2 contributors (all time) y: 236 lines of code website/index/index.css x: 2 contributors (all time) y: 210 lines of code core/src/main/java/com/facebook/ktfmt/kdoc/KDocFormatter.kt x: 4 contributors (all time) y: 152 lines of code core/src/main/java/com/facebook/ktfmt/format/TypeNameClassifier.kt x: 1 contributors (all time) y: 93 lines of code core/src/main/java/com/facebook/ktfmt/kdoc/KDocToken.kt x: 1 contributors (all time) y: 25 lines of code ktfmt_idea_plugin/src/main/resources/META-INF/plugin.xml x: 1 contributors (all time) y: 22 lines of code website/index.html x: 1 contributors (all time) y: 291 lines of code website/lib/bootstrap-cosmo.css x: 1 contributors (all time) y: 5707 lines of code ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij/KtfmtCodeStyleManager.java x: 2 contributors (all time) y: 102 lines of code ktfmt_idea_plugin/src/main/java/com/facebook/ktfmt/intellij/CodeStyleManagerDecorator.java x: 1 contributors (all time) y: 179 lines of code
5707.0
lines of code
  min: 1.0
  average: 241.53
  25th percentile: 24.5
  median: 46.0
  75th percentile: 130.5
  max: 5707.0
0 5.0
contributors (all time)
min: 1.0 | average: 2.27 | 25th percentile: 1.5 | median: 2.0 | 75th percentile: 3.0 | max: 5.0

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

core/src/main/java/com/facebook/ktfmt/format/Parser.kt x: 1 commits (30d) y: 42 lines of code core/src/main/java/com/facebook/ktfmt/format/KotlinInputAstVisitor.kt x: 2 commits (30d) y: 1808 lines of code core/src/main/java/com/facebook/ktfmt/format/RedundantSemicolonDetector.kt x: 1 commits (30d) y: 50 lines of code core/src/main/java/com/facebook/ktfmt/cli/Main.kt x: 1 commits (30d) y: 125 lines of code
1808.0
lines of code
  min: 40.0
  average: 413.0
  25th percentile: 41.0
  median: 50.0
  75th percentile: 966.5
  max: 1808.0
0 2.0
commits (30d)
min: 1.0 | average: 1.2 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.5 | max: 2.0

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

core/src/main/java/com/facebook/ktfmt/format/Parser.kt x: 1 contributors (30d) y: 42 lines of code core/src/main/java/com/facebook/ktfmt/format/KotlinInputAstVisitor.kt x: 1 contributors (30d) y: 1808 lines of code core/src/main/java/com/facebook/ktfmt/format/RedundantSemicolonDetector.kt x: 1 contributors (30d) y: 50 lines of code core/src/main/java/com/facebook/ktfmt/cli/Main.kt x: 1 contributors (30d) y: 125 lines of code
1808.0
lines of code
  min: 40.0
  average: 413.0
  25th percentile: 41.0
  median: 50.0
  75th percentile: 966.5
  max: 1808.0
0 1.0
contributors (30d)
min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0

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

core/src/main/java/com/facebook/ktfmt/format/Parser.kt x: 1 commits (90d) y: 42 lines of code core/src/main/java/com/facebook/ktfmt/format/KotlinInputAstVisitor.kt x: 18 commits (90d) y: 1808 lines of code core/src/main/java/com/facebook/ktfmt/format/RedundantSemicolonDetector.kt x: 3 commits (90d) y: 50 lines of code core/src/main/java/com/facebook/ktfmt/cli/Main.kt x: 3 commits (90d) y: 125 lines of code core/src/main/java/com/facebook/ktfmt/kdoc/KDocWriter.kt x: 1 commits (90d) y: 161 lines of code website/gulpfile.js x: 1 commits (90d) y: 133 lines of code core/src/main/java/com/facebook/ktfmt/format/Formatter.kt x: 2 commits (90d) y: 127 lines of code core/src/main/java/com/facebook/ktfmt/format/RedundantElementRemover.kt x: 1 commits (90d) y: 46 lines of code
1808.0
lines of code
  min: 40.0
  average: 281.33
  25th percentile: 44.0
  median: 125.0
  75th percentile: 147.0
  max: 1808.0
0 18.0
commits (90d)
min: 1.0 | average: 3.44 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 3.0 | max: 18.0

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

core/src/main/java/com/facebook/ktfmt/format/Parser.kt x: 1 contributors (90d) y: 42 lines of code core/src/main/java/com/facebook/ktfmt/format/KotlinInputAstVisitor.kt x: 3 contributors (90d) y: 1808 lines of code core/src/main/java/com/facebook/ktfmt/format/RedundantSemicolonDetector.kt x: 1 contributors (90d) y: 50 lines of code core/src/main/java/com/facebook/ktfmt/cli/Main.kt x: 2 contributors (90d) y: 125 lines of code core/src/main/java/com/facebook/ktfmt/kdoc/KDocWriter.kt x: 1 contributors (90d) y: 161 lines of code website/gulpfile.js x: 1 contributors (90d) y: 133 lines of code core/src/main/java/com/facebook/ktfmt/format/RedundantElementRemover.kt x: 1 contributors (90d) y: 46 lines of code
1808.0
lines of code
  min: 40.0
  average: 281.33
  25th percentile: 44.0
  median: 125.0
  75th percentile: 147.0
  max: 1808.0
0 3.0
contributors (90d)
min: 1.0 | average: 1.44 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 2.0 | max: 3.0