facebook / remodel
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 95 files with 17,896 lines of code.
    • 3 very long files (4,085 lines of code)
    • 4 long files (2,658 lines of code)
    • 18 medium size files (5,315 lines of codeclsfd_ftr_w_mp_ins)
    • 26 small files (3,728 lines of code)
    • 44 very small files (2,110 lines of code)
22% | 14% | 29% | 20% | 11%
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
ts23% | 15% | 28% | 20% | 11%
js0% | 0% | 56% | 23% | 20%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
src/plugins35% | 14% | 27% | 19% | 2%
src13% | 15% | 29% | 21% | 18%
src/js/object-mona-parser0% | 0% | 97% | 0% | 2%
features/support0% | 0% | 0% | 83% | 16%
src/js/object-mona-parser/algebraic-type0% | 0% | 0% | 0% | 100%
src/js/object-mona-parser/object-spec0% | 0% | 0% | 0% | 100%
src/js/require-plugin0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
equality.ts
in src/plugins
1558 160
1310 115
coding.ts
in src/plugins
1217 152
984 63
description.ts
in src/plugins
637 98
builder.ts
in src/plugins
534 56
objc.ts
in src
503 42
494 52
439 49
coding-utils.ts
in src/plugins
385 31
336 39
object-parser-common.js
in src/js/object-mona-parser
325 27
313 41
309 14
307 13
287 14
283 19
266 54
262 35
232 16
229 20
221 42
assert-nullability.ts
in src/plugins
220 44
copying.ts
in src/plugins
206 41
201 31
184 25
184 7
assume-nonnull.ts
in src/plugins
183 40
list.ts
in src
182 38
use-cpp.ts
in src/plugins
169 40
169 40
167 18
166 10
154 15
149 13
148 10
143 4
fetch-status.ts
in src/plugins
141 29
140 38
steps.js
in features/support
135 13
134 12
132 20
132 8
131 6
117 21
117 21
117 21
immutable-ivars.ts
in src/plugins
115 18
114 21
104 3
Files With Most Units (Top 50)
File# lines# units
equality.ts
in src/plugins
1558 160
coding.ts
in src/plugins
1217 152
1310 115
description.ts
in src/plugins
637 98
984 63
builder.ts
in src/plugins
534 56
266 54
494 52
439 49
assert-nullability.ts
in src/plugins
220 44
221 42
objc.ts
in src
503 42
313 41
copying.ts
in src/plugins
206 41
assume-nonnull.ts
in src/plugins
183 40
use-cpp.ts
in src/plugins
169 40
169 40
336 39
140 38
list.ts
in src
182 38
262 35
coding-utils.ts
in src/plugins
385 31
201 31
fetch-status.ts
in src/plugins
141 29
object-parser-common.js
in src/js/object-mona-parser
325 27
184 25
117 21
114 21
117 21
117 21
132 20
229 20
283 19
immutable-ivars.ts
in src/plugins
115 18
88 18
167 18
232 16
97 16
91 15
154 15
309 14
287 14
steps.js
in features/support
135 13
307 13
149 13
either.ts
in src
67 12
134 12
76 11
148 10
166 10
Files With Long Lines (Top 5)

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

File# lines# units# long lines
object-parser-common.js
in src/js/object-mona-parser
325 27 9
equality.ts
in src/plugins
1558 160 2
184 7 1
coding.ts
in src/plugins
1217 152 1
41 3 1
Correlations

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

src/cpp-renderer.ts x: 9 commits (all time) y: 232 lines of code src/objc-nullability-utils.ts x: 12 commits (all time) y: 140 lines of code src/algebraic-type-utils.ts x: 40 commits (all time) y: 439 lines of code src/algebraic-type.ts x: 27 commits (all time) y: 101 lines of code src/objc-comment-utils.ts x: 8 commits (all time) y: 50 lines of code src/object-spec-code-utils.ts x: 19 commits (all time) y: 266 lines of code src/object-spec.ts x: 31 commits (all time) y: 64 lines of code src/plugins/coding.ts x: 52 commits (all time) y: 1217 lines of code src/object-spec-helpers.ts x: 1 commits (all time) y: 88 lines of code src/plugins/fetch-status.ts x: 24 commits (all time) y: 141 lines of code src/plugins/algebraic-type-matching-generic.ts x: 26 commits (all time) y: 313 lines of code src/clang-common.ts x: 1 commits (all time) y: 30 lines of code src/cplusplus.ts x: 12 commits (all time) y: 104 lines of code src/objc-renderer.ts x: 75 commits (all time) y: 1310 lines of code src/objc.ts x: 45 commits (all time) y: 503 lines of code src/object-generation-parsing-utils.ts x: 14 commits (all time) y: 184 lines of code src/plugins/assert-nullability.ts x: 23 commits (all time) y: 220 lines of code features/support/hook.js x: 4 commits (all time) y: 26 lines of code features/support/steps.js x: 5 commits (all time) y: 135 lines of code src/algebraic-type-creation.ts x: 26 commits (all time) y: 201 lines of code src/algebraic-type-parser.ts x: 15 commits (all time) y: 149 lines of code src/algebraic-type-utils-for-matching.ts x: 13 commits (all time) y: 132 lines of code src/algebraic-types.ts x: 43 commits (all time) y: 309 lines of code src/commandline.ts x: 25 commits (all time) y: 166 lines of code src/configuration.ts x: 11 commits (all time) y: 283 lines of code src/either.ts x: 7 commits (all time) y: 67 lines of code src/file-finder.ts x: 9 commits (all time) y: 148 lines of code src/file-logged-sequence-read-utils.ts x: 6 commits (all time) y: 74 lines of code src/file-logged-sequence-write-utils.ts x: 10 commits (all time) y: 229 lines of code src/file-reader.ts x: 5 commits (all time) y: 23 lines of code src/file-writer.ts x: 8 commits (all time) y: 33 lines of code src/functor.ts x: 3 commits (all time) y: 51 lines of code src/immutable-import-utils.ts x: 17 commits (all time) y: 68 lines of code src/immutable-initializer-utils.ts x: 9 commits (all time) y: 167 lines of code src/lazy-sequence.ts x: 4 commits (all time) y: 89 lines of code src/list.ts x: 6 commits (all time) y: 182 lines of code src/logged-sequence-utils.ts x: 4 commits (all time) y: 71 lines of code src/logging.ts x: 5 commits (all time) y: 154 lines of code src/main.ts x: 6 commits (all time) y: 99 lines of code src/map.ts x: 6 commits (all time) y: 47 lines of code src/maybe.ts x: 10 commits (all time) y: 55 lines of code src/objc-file-creation.ts x: 9 commits (all time) y: 93 lines of code src/objc-import-utils.ts x: 37 commits (all time) y: 307 lines of code src/object-spec-creation.ts x: 35 commits (all time) y: 262 lines of code src/object-spec-parser.ts x: 18 commits (all time) y: 134 lines of code src/object-specs.ts x: 33 commits (all time) y: 287 lines of code src/parallel-process-queue.ts x: 9 commits (all time) y: 131 lines of code src/parallel-process-worker.ts x: 6 commits (all time) y: 58 lines of code src/pluggable-objc-file-creation.ts x: 44 commits (all time) y: 984 lines of code src/plugin-inclusion-utils.ts x: 4 commits (all time) y: 19 lines of code src/plugins/algebraic-type-case-matching.ts x: 2 commits (all time) y: 184 lines of code src/plugins/algebraic-type-initialization.ts x: 62 commits (all time) y: 494 lines of code src/plugins/algebraic-type-matching-bool.ts x: 22 commits (all time) y: 117 lines of code src/plugins/algebraic-type-matching-void.ts x: 24 commits (all time) y: 114 lines of code src/plugins/algebraic-type-templated-matching.ts x: 37 commits (all time) y: 336 lines of code src/plugins/assume-nonnull.ts x: 22 commits (all time) y: 183 lines of code src/plugins/builder.ts x: 56 commits (all time) y: 534 lines of code src/plugins/coding-type-safety.ts x: 4 commits (all time) y: 83 lines of code src/plugins/coding-utils.ts x: 11 commits (all time) y: 385 lines of code src/plugins/copying.ts x: 28 commits (all time) y: 206 lines of code src/plugins/description-attribute-error.ts x: 2 commits (all time) y: 41 lines of code src/plugins/description.ts x: 38 commits (all time) y: 637 lines of code src/plugins/equality.ts x: 39 commits (all time) y: 1558 lines of code src/plugins/immutable-ivars.ts x: 8 commits (all time) y: 115 lines of code src/plugins/immutable-properties.ts x: 54 commits (all time) y: 88 lines of code src/plugins/init-new-unavailable.ts x: 23 commits (all time) y: 221 lines of code src/plugins/subclassing-restricted.ts x: 15 commits (all time) y: 169 lines of code src/plugins/use-cpp.ts x: 21 commits (all time) y: 169 lines of code src/promise.ts x: 7 commits (all time) y: 91 lines of code src/queue.ts x: 5 commits (all time) y: 60 lines of code src/string-utils.ts x: 9 commits (all time) y: 76 lines of code src/unique.ts x: 4 commits (all time) y: 33 lines of code src/code.ts x: 15 commits (all time) y: 61 lines of code src/value-object-default-config.ts x: 17 commits (all time) y: 30 lines of code src/immutable-property-utils.ts x: 4 commits (all time) y: 97 lines of code src/annotation-utils.ts x: 7 commits (all time) y: 11 lines of code src/require-plugin.ts x: 9 commits (all time) y: 65 lines of code src/js/object-mona-parser/object-parser-common.js x: 16 commits (all time) y: 325 lines of code src/objc-type-utils.ts x: 8 commits (all time) y: 143 lines of code src/object-generation.ts x: 7 commits (all time) y: 13 lines of code src/output-control.ts x: 4 commits (all time) y: 18 lines of code src/object-spec-default-config.ts x: 13 commits (all time) y: 21 lines of code src/object-spec-utils.ts x: 9 commits (all time) y: 9 lines of code src/function-utils.ts x: 12 commits (all time) y: 11 lines of code src/error.ts x: 2 commits (all time) y: 9 lines of code src/file.ts x: 2 commits (all time) y: 18 lines of code src/js/object-mona-parser/object-mona-parser.js x: 4 commits (all time) y: 7 lines of code src/js/object-mona-parser/object-spec/object-spec-parser.js x: 3 commits (all time) y: 21 lines of code src/js/require-plugin/require-plugin.js x: 1 commits (all time) y: 6 lines of code
1558.0
lines of code
  min: 6.0
  average: 188.38
  25th percentile: 51.0
  median: 115.0
  75th percentile: 206.0
  max: 1558.0
0 75.0
commits (all time)
min: 1.0 | average: 16.48 | 25th percentile: 5.0 | median: 10.0 | 75th percentile: 23.0 | max: 75.0

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

src/cpp-renderer.ts x: 3 contributors (all time) y: 232 lines of code src/objc-nullability-utils.ts x: 7 contributors (all time) y: 140 lines of code src/algebraic-type-utils.ts x: 13 contributors (all time) y: 439 lines of code src/algebraic-type.ts x: 14 contributors (all time) y: 101 lines of code src/objc-comment-utils.ts x: 6 contributors (all time) y: 50 lines of code src/object-spec-code-utils.ts x: 12 contributors (all time) y: 266 lines of code src/object-spec.ts x: 11 contributors (all time) y: 64 lines of code src/plugins/coding.ts x: 18 contributors (all time) y: 1217 lines of code src/object-spec-helpers.ts x: 1 contributors (all time) y: 88 lines of code src/plugins/fetch-status.ts x: 11 contributors (all time) y: 141 lines of code src/plugins/algebraic-type-matching-generic.ts x: 10 contributors (all time) y: 313 lines of code src/clang-common.ts x: 1 contributors (all time) y: 30 lines of code src/cplusplus.ts x: 5 contributors (all time) y: 104 lines of code src/objc-renderer.ts x: 20 contributors (all time) y: 1310 lines of code src/objc.ts x: 12 contributors (all time) y: 503 lines of code src/object-generation-parsing-utils.ts x: 9 contributors (all time) y: 184 lines of code src/plugins/assert-nullability.ts x: 9 contributors (all time) y: 220 lines of code features/support/hook.js x: 3 contributors (all time) y: 26 lines of code features/support/steps.js x: 3 contributors (all time) y: 135 lines of code src/algebraic-type-creation.ts x: 14 contributors (all time) y: 201 lines of code src/algebraic-type-parser.ts x: 11 contributors (all time) y: 149 lines of code src/algebraic-type-utils-for-matching.ts x: 7 contributors (all time) y: 132 lines of code src/algebraic-types.ts x: 14 contributors (all time) y: 309 lines of code src/commandline.ts x: 9 contributors (all time) y: 166 lines of code src/configuration.ts x: 7 contributors (all time) y: 283 lines of code src/either.ts x: 6 contributors (all time) y: 67 lines of code src/file-finder.ts x: 6 contributors (all time) y: 148 lines of code src/file-logged-sequence-read-utils.ts x: 6 contributors (all time) y: 74 lines of code src/file-logged-sequence-write-utils.ts x: 6 contributors (all time) y: 229 lines of code src/file-reader.ts x: 4 contributors (all time) y: 23 lines of code src/file-writer.ts x: 5 contributors (all time) y: 33 lines of code src/functor.ts x: 3 contributors (all time) y: 51 lines of code src/immutable-import-utils.ts x: 3 contributors (all time) y: 68 lines of code src/immutable-initializer-utils.ts x: 4 contributors (all time) y: 167 lines of code src/lazy-sequence.ts x: 4 contributors (all time) y: 89 lines of code src/list.ts x: 5 contributors (all time) y: 182 lines of code src/logged-sequence-utils.ts x: 4 contributors (all time) y: 71 lines of code src/logging.ts x: 5 contributors (all time) y: 154 lines of code src/map.ts x: 5 contributors (all time) y: 47 lines of code src/objc-file-creation.ts x: 6 contributors (all time) y: 93 lines of code src/object-spec-creation.ts x: 14 contributors (all time) y: 262 lines of code src/object-spec-parser.ts x: 10 contributors (all time) y: 134 lines of code src/object-specs.ts x: 11 contributors (all time) y: 287 lines of code src/parallel-process-queue.ts x: 5 contributors (all time) y: 131 lines of code src/parallel-process-worker.ts x: 5 contributors (all time) y: 58 lines of code src/pluggable-objc-file-creation.ts x: 16 contributors (all time) y: 984 lines of code src/plugins/algebraic-type-case-matching.ts x: 2 contributors (all time) y: 184 lines of code src/plugins/algebraic-type-initialization.ts x: 17 contributors (all time) y: 494 lines of code src/plugins/algebraic-type-matching-bool.ts x: 8 contributors (all time) y: 117 lines of code src/plugins/algebraic-type-matching-void.ts x: 8 contributors (all time) y: 114 lines of code src/plugins/algebraic-type-templated-matching.ts x: 15 contributors (all time) y: 336 lines of code src/plugins/assume-nonnull.ts x: 10 contributors (all time) y: 183 lines of code src/plugins/builder.ts x: 17 contributors (all time) y: 534 lines of code src/plugins/coding-type-safety.ts x: 3 contributors (all time) y: 83 lines of code src/plugins/coding-utils.ts x: 7 contributors (all time) y: 385 lines of code src/plugins/copying-type-safety.ts x: 6 contributors (all time) y: 132 lines of code src/plugins/copying.ts x: 11 contributors (all time) y: 206 lines of code src/plugins/description-attribute-error.ts x: 2 contributors (all time) y: 41 lines of code src/plugins/description.ts x: 12 contributors (all time) y: 637 lines of code src/plugins/equality.ts x: 13 contributors (all time) y: 1558 lines of code src/plugins/immutable-ivars.ts x: 4 contributors (all time) y: 115 lines of code src/plugins/immutable-properties.ts x: 14 contributors (all time) y: 88 lines of code src/plugins/init-new-unavailable.ts x: 9 contributors (all time) y: 221 lines of code src/plugins/subclassing-restricted.ts x: 8 contributors (all time) y: 169 lines of code src/plugins/use-cpp.ts x: 10 contributors (all time) y: 169 lines of code src/unique.ts x: 4 contributors (all time) y: 33 lines of code src/code.ts x: 8 contributors (all time) y: 61 lines of code src/value-object-default-config.ts x: 7 contributors (all time) y: 30 lines of code src/immutable-property-utils.ts x: 1 contributors (all time) y: 97 lines of code src/annotation-utils.ts x: 6 contributors (all time) y: 11 lines of code src/js/object-mona-parser/object-parser-common.js x: 9 contributors (all time) y: 325 lines of code src/objc-type-utils.ts x: 6 contributors (all time) y: 143 lines of code src/object-generation.ts x: 6 contributors (all time) y: 13 lines of code src/output-control.ts x: 4 contributors (all time) y: 18 lines of code src/object-spec-default-config.ts x: 6 contributors (all time) y: 21 lines of code src/object-spec-utils.ts x: 5 contributors (all time) y: 9 lines of code src/function-utils.ts x: 8 contributors (all time) y: 11 lines of code src/error.ts x: 2 contributors (all time) y: 9 lines of code src/file.ts x: 2 contributors (all time) y: 18 lines of code src/js/object-mona-parser/object-mona-parser.js x: 4 contributors (all time) y: 7 lines of code src/js/object-mona-parser/algebraic-type/algebraic-type-parser.js x: 4 contributors (all time) y: 58 lines of code src/js/object-mona-parser/object-spec/object-spec-parser.js x: 3 contributors (all time) y: 21 lines of code src/js/require-plugin/require-plugin.js x: 1 contributors (all time) y: 6 lines of code
1558.0
lines of code
  min: 6.0
  average: 188.38
  25th percentile: 51.0
  median: 115.0
  75th percentile: 206.0
  max: 1558.0
0 20.0
contributors (all time)
min: 1.0 | average: 7.34 | 25th percentile: 4.0 | median: 6.0 | 75th percentile: 10.0 | max: 20.0

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

src/cpp-renderer.ts x: 1 commits (30d) y: 232 lines of code
232.0
lines of code
  min: 232.0
  average: 232.0
  25th percentile: 232.0
  median: 232.0
  75th percentile: 232.0
  max: 232.0
0 1.0
commits (30d)
min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0

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

src/cpp-renderer.ts x: 1 contributors (30d) y: 232 lines of code
232.0
lines of code
  min: 232.0
  average: 232.0
  25th percentile: 232.0
  median: 232.0
  75th percentile: 232.0
  max: 232.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): 1 points

src/cpp-renderer.ts x: 1 commits (90d) y: 232 lines of code
232.0
lines of code
  min: 232.0
  average: 232.0
  25th percentile: 232.0
  median: 232.0
  75th percentile: 232.0
  max: 232.0
0 1.0
commits (90d)
min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0

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

src/cpp-renderer.ts x: 1 contributors (90d) y: 232 lines of code
232.0
lines of code
  min: 232.0
  average: 232.0
  25th percentile: 232.0
  median: 232.0
  75th percentile: 232.0
  max: 232.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