File Complexity Overall
  • There are 25 files with units, with 10,709 lines of code.
    • 3 very complex files (McCabe index sum 251+; 6,540 lines of code)
    • 2 complex files (McCabe index sum 126-250; 1,663 lines of code)
    • 5 medium complex files (McCabe index sum 51-125; 1,128 lines of code)
    • 5 slightly complex files (McCabe index sum 26-50; 791 lines of code)
    • 10 simple files (McCabe index sum 1-25; 587 lines of code)
  • 6 main files have no units (e.g. languages without unit analysis, or files without functions) and are not classified.
system61% | 15% | 10% | 7% | 5%
Legend:
251+
126-250
51-125
26-50
1-25


explore: grouped by folders | grouped by complexity
File Complexity per Extension
251+
126-250
51-125
26-50
1-25
js62% | 15% | 10% | 6% | 5%
rb0% | 0% | 0% | 77% | 22%
File Complexity per Logical Decomposition
primary
251+
126-250
51-125
26-50
1-25
src61% | 15% | 10% | 7% | 5%
Most Complex Files (Top 25)

The McCabe index of a file grows with its size: per 100 lines tells a large but plain file from a dense one, and most complex unit whether the complexity sits in one unit or is spread over many.

File# lines# unitsMcCabe index
(sum)
per 100
lines
most complex
unit
leaflet-src.js
in src/js/libs
4280 437 1065 25 14
easyXDM.js
in src/js/libs
1404 136 390 28 36
backbone.js
in src/js/libs
856 95 357 42 21
anim.js
in src/js/gui
1065 75 240 23 19
modernizr.js
in src/js/libs
598 74 183 31 13
model.js
in src/js/gui/xmas/model
283 38 68 24 8
data.js
in src/js/gui
213 25 60 28 5
latlng.utils.js
in src/js/libs
201 14 55 27 13
json2.js
in src/js/libs
173 7 51 29 29
productsGridView.js
in src/js/gui/xmas/view
258 13 51 20 13
social.js
in src/js/gui
196 18 31 16 6
build_gift_data.rb
in src/scripts
159 7 31 19 19
boot.js
in src
126 11 26 21 8
wishListBox.js
in src/js/gui/xmas/view
137 13 26 19 5
singularProductView.js
in src/js/gui/xmas/view
173 16 26 15 5
touch.js
in src/js/gui
64 8 25 39 12
mainView.js
in src/js/gui/xmas/view
90 9 18 20 4
boot.js
in src/js/gui
89 5 13 15 7
analytics.js
in src/js/gui
37 9 12 32 2
observer.js
in src/js/gui/xmas/observer
33 6 11 33 3
controller.js
in src/js/gui/xmas/controller
76 7 11 14 3
resizer.rb
in src/scripts
45 4 10 22 7
filterPanel.js
in src/js/gui/xmas/view
62 5 9 15 3
initLoadView.js
in src/js/gui/xmas/view
52 7 9 17 3
core.js
in src/js/gui
39 3 7 18 3
About This Analysis
  • File complexity is the sum of the McCabe indexes (conditional complexity) of the units (methods, functions...) in a file.
  • Files are classified in five categories based on that sum: 1-25 (simple files), 26-50 (slightly complex files), 51-125 (medium complex files), 126-250 (complex files), 251+ (very complex files). The default bands are five times the unit complexity bands, as a file is a group of units.
  • Only main code files with units are classified. Files without units (languages without unit analysis, or files without functions) have no complexity to measure and are left out rather than counted as simple.
  • A very complex file holds many decisions, which often means it has too many responsibilities: a candidate to split, and a place where changes need more testing.
Learn more...