relayjs / relay-devtools
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 17% duplication:
    • 8,355 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 1,473 duplicated lines
  • 147 duplicates
system17% (1,473 lines)
Duplication per Extension
js11% (755 lines)
css44% (670 lines)
html8% (48 lines)
Duplication per Component (primary)
src/devtools/views25% (1,216 lines)
shells/browser/shared9% (61 lines)
src/devtools9% (42 lines)
shells/browser/chrome56% (39 lines)
packages/relay-devtools-core/src6% (25 lines)
shells/browser/firefox41% (23 lines)
src/backend8% (18 lines)
packages/relay-devtools8% (15 lines)
fixtures/standalone5% (14 lines)
src/backend/util3% (14 lines)
shells/dev/src7% (6 lines)
ROOT0% (0 lines)
shells/dev0% (0 lines)
shells/dev/relay-app0% (0 lines)
shells0% (0 lines)
packages/relay-devtools-core0% (0 lines)
src0% (0 lines)

Duplication Between Components (50+ lines)

G shells/browser/chrome shells/browser/chrome shells/browser/shared shells/browser/shared shells/browser/chrome--shells/browser/shared 60 shells/browser/firefox shells/browser/firefox shells/browser/chrome--shells/browser/firefox 53

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 50 longest duplicates.
See data for all 147 duplicates...
Size#FoldersFilesLinesCode
48 x 2 src/devtools/views/Network
src/devtools/views/StoreInspector/EventLogger
21:73 (21%)
18:70 (30%)
view
41 x 2 src/devtools/views/Components
src/devtools/views/StoreInspector
10:57 (100%)
10:57 (100%)
view
37 x 2 src/devtools/views/StoreInspector
src/devtools/views
15:57 (88%)
14:56 (48%)
view
30 x 2 src/devtools/views/Components
src/devtools/views/StoreInspector
10:44 (100%)
10:44 (100%)
view
25 x 2 src/devtools/views/StoreInspector
src/devtools/views/StoreInspector
33:62 (37%)
96:125 (10%)
view
24 x 2 src/devtools/views/StoreInspector
src/devtools/views/StoreInspector
10:37 (58%)
98:125 (9%)
view
24 x 2 src/devtools/views/StoreInspector
src/devtools/views/StoreInspector
35:62 (35%)
10:37 (58%)
view
23 x 2 src/devtools/views/StoreInspector
src/devtools/views/StoreInspector
142:164 (11%)
208:230 (11%)
view
22 x 2 src/devtools/views/Components
src/devtools/views/Components
86:107 (16%)
134:155 (16%)
view
21 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector
46:70 (10%)
23:47 (15%)
view
21 x 2 src/devtools
src/devtools
159:184 (6%)
197:222 (6%)
view
19 x 2 src/devtools/views/Components
src/devtools/views/StoreInspector
134:152 (14%)
144:162 (9%)
view
19 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector
10:32 (15%)
98:120 (7%)
view
19 x 2 src/devtools/views/Components
src/devtools/views/StoreInspector
134:152 (14%)
210:228 (9%)
view
19 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector
10:32 (15%)
10:32 (46%)
view
19 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector
10:32 (15%)
35:57 (28%)
view
19 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector
81:101 (15%)
241:261 (7%)
view
19 x 2 src/devtools/views/Components
src/devtools/views/StoreInspector
86:104 (14%)
210:228 (9%)
view
19 x 2 src/devtools/views/Components
src/devtools/views/StoreInspector
86:104 (14%)
144:162 (9%)
view
19 x 2 src/devtools/views/StoreInspector
src/devtools/views/StoreInspector
62:83 (28%)
69:90 (7%)
view
18 x 2 src/devtools/views/Components
src/devtools/views/StoreInspector
37:55 (41%)
41:59 (36%)
view
18 x 2 src/devtools/views/Network
src/devtools/views/StoreInspector
11:29 (19%)
11:29 (7%)
view
15 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector/EventLogger
77:91 (7%)
120:134 (7%)
view
15 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector/EventLogger
119:133 (7%)
223:237 (7%)
view
15 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector
107:124 (12%)
29:46 (6%)
view
14 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector/EventLogger
77:90 (6%)
224:237 (6%)
view
13 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector
124:137 (10%)
228:241 (5%)
view
12 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector
121:132 (5%)
294:305 (4%)
view
12 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector
225:236 (5%)
294:305 (4%)
view
12 x 2 src/devtools/views/Network
src/devtools/views/StoreInspector
29:43 (13%)
51:65 (4%)
view
12 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector
18:29 (5%)
27:38 (4%)
view
12 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector
78:89 (5%)
294:305 (4%)
view
11 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector
144:156 (8%)
19:31 (57%)
view
11 x 2 src/devtools/views/StoreInspector
src/devtools/views/StoreInspector
12:23 (16%)
147:158 (4%)
view
10 x 2 src/devtools/views/StoreInspector
src/devtools/views/StoreInspector
37:48 (24%)
162:173 (4%)
view
9 x 2 src/devtools/views/Network
src/devtools/views/StoreInspector/EventLogger
33:43 (9%)
146:156 (7%)
view
9 x 2 src/devtools/views/Network
src/devtools/views/StoreInspector
33:43 (9%)
21:31 (47%)
view
9 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector
146:156 (7%)
55:65 (3%)
view
9 x 2 src/devtools/views/StoreInspector
src/devtools/views/StoreInspector
21:31 (47%)
55:65 (3%)
view
9 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector
100:108 (4%)
248:256 (3%)
view
9 x 2 packages/relay-devtools
shells/browser/shared
10:18 (7%)
8:16 (33%)
view
9 x 2 src/devtools/views/Components
src/devtools/views/StoreInspector
106:114 (6%)
164:172 (4%)
view
9 x 2 src/devtools/views
src/devtools/views
67:75 (12%)
82:90 (12%)
view
9 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector/EventLogger
54:62 (4%)
168:176 (4%)
view
9 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector/EventLogger
100:108 (4%)
168:176 (4%)
view
9 x 2 packages/relay-devtools-core/src
packages/relay-devtools-core/src
144:154 (8%)
112:123 (5%)
view
9 x 2 src/devtools/views/Network
src/devtools/views/StoreInspector
61:70 (9%)
87:96 (3%)
view
9 x 2 shells/browser/chrome
shells/browser/shared
12:20 (42%)
30:38 (10%)
view
9 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector
54:62 (4%)
248:256 (3%)
view
9 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector
168:176 (4%)
248:256 (3%)
view
Duplicated Units
The list of top 2 duplicated units.
See data for all 2 unit duplicates...
Size#FoldersFilesLinesCode
30 x 2 src/devtools/views/Network
src/devtools/views/StoreInspector/EventLogger
40:74 
37:71 
view
24 x 2 src/devtools/views/StoreInspector/EventLogger
src/devtools/views/StoreInspector
46:71 
23:48 
view