primer / view_components
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 234 files with 10,615 lines of code.
    • 2 very long files (2,793 lines of code)
    • 0 long files (0 lines of code)
    • 5 medium size files (1,392 lines of codeclsfd_ftr_w_mp_ins)
    • 8 small files (968 lines of code)
    • 219 very small files (5,462 lines of code)
26% | 0% | 13% | 9% | 51%
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
yml84% | 0% | 15% | 0% | <1%
rb0% | 0% | 8% | 14% | 77%
rake0% | 0% | 73% | 0% | 26%
thor0% | 0% | 0% | 39% | 60%
erb0% | 0% | 0% | 0% | 100%
ts0% | 0% | 0% | 0% | 100%
gemspec0% | 0% | 0% | 0% | 100%
js0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
lib37% | 0% | 20% | 13% | 27%
static83% | 0% | 16% | 0% | 0%
stories0% | 0% | 16% | 0% | 83%
ROOT0% | 0% | 0% | 32% | 67%
script0% | 0% | 0% | 100% | 0%
app0% | 0% | 0% | 3% | 96%
Longest Files (Top 50)
File# lines# units
utilities.yml
in lib/primer/classify
1777 -
arguments.yml
in static
1016 -
rake
docs.rake
in lib/tasks
399 9
298 -
deprecated_arguments.rb
in lib/rubocop/cop/primer
266 2
markdown_stories.rb
in stories/primer
223 -
classes.yml
in static
206 -
primer_octicon.rb
in lib/rubocop/cop/primer
143 13
base_linter.rb
in lib/primer/view_components/linters
136 13
utilities.rb
in lib/primer/classify
127 12
116 30
blankslate_api_migration.rb
in lib/primer/view_components/linters
115 6
two_column_layout_migration_counter.rb
in lib/primer/view_components/linters
114 15
111 8
layout.rb
in app/components/primer/alpha
106 6
95 24
component.rb
in app/components/primer
87 13
rake
utilities.rake
in lib/tasks
86 -
blankslate_stories.rb
in stories/primer/beta
85 -
82 19
tab_component.rb
in app/components/primer/navigation
81 3
classify.rb
in lib/primer
81 4
counter_component.rb
in app/components/primer
79 4
close_button_component_migration_counter.rb
in lib/primer/view_components/linters
76 6
auto_complete.rb
in app/components/primer/beta
72 5
blankslate.rb
in app/components/primer/beta
70 3
menu.rb
in app/components/primer/dropdown
70 6
base.rb
in lib/primer/view_components/linters/argument_mappers
69 7
flex_component.rb
in app/components/primer
68 3
button_component.rb
in app/components/primer
67 3
tab_component_stories.rb
in stories/primer/navigation
63 -
63 -
60 -
docs_helper.rb
in lib/yard
60 9
border_box_component.rb
in app/components/primer
58 2
popover_component.rb
in app/components/primer
58 3
button.rb
in lib/primer/view_components/linters/argument_mappers
57 2
octicon_component.rb
in app/components/primer
54 2
ast_traverser.rb
in lib/tasks/helpers
54 8
timeline_item_component.rb
in app/components/primer
50 4
avatar_stack.rb
in app/components/primer/beta
49 4
blankslate_component.rb
in app/components/primer
49 1
tooltip.rb
in app/components/primer
49 2
erb_block.rb
in lib/primer/view_components/linters/argument_mappers/helpers
49 8
state_component.rb
in app/components/primer
47 2
46 -
46 -
button_marketing.rb
in app/components/primer/alpha
45 2
avatar_stack_stories.rb
in stories/primer/beta
45 -
breadcrumbs.rb
in app/components/primer/beta
44 4
Files With Most Units (Top 50)
File# lines# units
116 30
95 24
82 19
two_column_layout_migration_counter.rb
in lib/primer/view_components/linters
114 15
component.rb
in app/components/primer
87 13
base_linter.rb
in lib/primer/view_components/linters
136 13
primer_octicon.rb
in lib/rubocop/cop/primer
143 13
utilities.rb
in lib/primer/classify
127 12
rake
docs.rake
in lib/tasks
399 9
docs_helper.rb
in lib/yard
60 9
111 8
erb_block.rb
in lib/primer/view_components/linters/argument_mappers/helpers
49 8
ast_traverser.rb
in lib/tasks/helpers
54 8
base.rb
in lib/primer/view_components/linters/argument_mappers
69 7
menu.rb
in app/components/primer/dropdown
70 6
layout.rb
in app/components/primer/alpha
106 6
cache.rb
in app/lib/primer/octicon
31 6
close_button_component_migration_counter.rb
in lib/primer/view_components/linters
76 6
blankslate_api_migration.rb
in lib/primer/view_components/linters
115 6
auto_complete.rb
in app/components/primer/beta
72 5
truncate.rb
in app/components/primer/beta
40 5
26 5
view_components.rb
in lib/primer
40 5
breadcrumbs.rb
in app/components/primer/beta
44 4
avatar_stack.rb
in app/components/primer/beta
49 4
octicon_symbols_component.rb
in app/components/primer
42 4
clipboard_copy_component.ts
in app/components/primer
39 4
counter_component.rb
in app/components/primer
79 4
timeline_item_component.rb
in app/components/primer
50 4
underline_nav_helper.rb
in app/lib/primer
33 4
classify.rb
in lib/primer
81 4
constants.rb
in lib/primer/view_components
40 4
blankslate.rb
in app/components/primer/beta
70 3
time_ago_component.rb
in app/components/primer
33 3
tab_component.rb
in app/components/primer/navigation
81 3
popover_component.rb
in app/components/primer
58 3
button_component.rb
in app/components/primer
67 3
link_component.rb
in app/components/primer
31 3
tab_container_component.rb
in app/components/primer
14 3
flex_component.rb
in app/components/primer
68 3
34 3
tab_nav_helper.rb
in app/lib/primer
26 3
system_arguments.rb
in lib/primer/view_components/linters/argument_mappers
36 3
autocorrectable.rb
in lib/primer/view_components/linters
22 3
deprecated_label_schemes.rb
in lib/rubocop/cop/primer
42 3
text.rb
in app/components/primer/beta
15 2
avatar.rb
in app/components/primer/beta
38 2
item.rb
in app/components/primer/beta/auto_complete
25 2
image.rb
in app/components/primer
16 2
border_box_component.rb
in app/components/primer
58 2
Files With Long Lines (Top 50)

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

File# lines# units# long lines
markdown_stories.rb
in stories/primer
223 - 11
95 24 9
116 30 5
base_linter.rb
in lib/primer/view_components/linters
136 13 5
rake
docs.rake
in lib/tasks
399 9 5
layout.rb
in app/components/primer/alpha
106 6 4
tab_component.rb
in app/components/primer/navigation
81 3 3
spinner_component.html.erb
in app/components/primer
4 - 2
local_time.rb
in app/components/primer
26 2 2
link_component.rb
in app/components/primer
31 3 2
blankslate_stories.rb
in stories/primer/beta
85 - 2
14 - 2
layout_stories.rb
in stories/primer/alpha
19 - 2
primer_octicon.rb
in lib/rubocop/cop/primer
143 13 2
truncate.rb
in app/components/primer/beta
40 5 1
menu.rb
in app/components/primer/dropdown
70 6 1
octicon_symbols_component.rb
in app/components/primer
42 4 1
component.rb
in app/components/primer
87 13 1
octicon_component.rb
in app/components/primer
54 2 1
counter_component.rb
in app/components/primer
79 4 1
button_component.html.erb
in app/components/primer
3 - 1
base_button.rb
in app/components/primer
26 2 1
flash_component.rb
in app/components/primer
31 1 1
base_component.rb
in app/components/primer
21 2 1
truncate.rb
in app/components/primer
22 2 1
26 5 1
cache.rb
in app/lib/primer/octicon
31 6 1
34 3 1
82 19 1
truncate_text_stories.rb
in stories/primer/beta/truncate
14 - 1
truncate_stories.rb
in stories/primer
13 - 1
46 - 1
validation.rb
in lib/primer/classify
13 1 1
utilities.rb
in lib/primer/classify
127 12 1
classify.rb
in lib/primer
81 4 1
engine.rb
in lib/primer/view_components
22 - 1
clipboard_copy_component_migration_counter.rb
in lib/primer/view_components/linters
15 - 1
close_button_component_migration_counter.rb
in lib/primer/view_components/linters
76 6 1
blankslate_api_migration.rb
in lib/primer/view_components/linters
115 6 1
blankslate_component_migration_counter.rb
in lib/primer/view_components/linters
10 - 1
flash_component_migration_counter.rb
in lib/primer/view_components/linters
24 1 1
base.rb
in lib/primer/view_components/linters/argument_mappers
69 7 1
button.rb
in lib/primer/view_components/linters/argument_mappers
57 2 1
close_button.rb
in lib/primer/view_components/linters/argument_mappers
30 2 1
erb_block.rb
in lib/primer/view_components/linters/argument_mappers/helpers
49 8 1
autocorrectable.rb
in lib/primer/view_components/linters
22 3 1
subhead_component_migration_counter.rb
in lib/primer/view_components/linters
10 - 1
breadcrumbs_component_migration_counter.rb
in lib/primer/view_components/linters
10 - 1
label_component_migration_counter.rb
in lib/primer/view_components/linters
18 - 1
button_component_migration_counter.rb
in lib/primer/view_components/linters
19 - 1