reactjs / tl.reactjs.org
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
  • 4% duplication:
    • 11,457 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 513 duplicated lines
  • 39 duplicates
system4% (513 lines)
Duplication per Extension
js5% (290 lines)
tsx4% (181 lines)
html71% (28 lines)
css2% (14 lines)
Duplication per Component (primary)
beta/src4% (195 lines)
src/components5% (87 lines)
src/templates6% (37 lines)
beta/public96% (32 lines)
beta/scripts10% (30 lines)
scripts58% (30 lines)
src/pages3% (20 lines)
static/js100% (18 lines)
beta/plugins11% (14 lines)
plugins/gatsby-remark-header-custom-ids10% (14 lines)
static/html93% (14 lines)
src1% (12 lines)
src/utils4% (10 lines)
beta0% (0 lines)
plugins/gatsby-source-react-error-codes0% (0 lines)
plugins/gatsby-transformer-home-example-code0% (0 lines)
plugins/gatsby-remark-use-jsx0% (0 lines)
plugins/gatsby-transformer-versions-yaml0% (0 lines)
plugins/gatsby-transformer-authors-yaml0% (0 lines)
content/tutorial0% (0 lines)
content0% (0 lines)
content/community0% (0 lines)
ROOT0% (0 lines)
gatsby0% (0 lines)
src/css0% (0 lines)

Duplication Between Components (50+ lines)

G beta/scripts beta/scripts scripts scripts beta/scripts--scripts 60

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 39 longest duplicates.
See data for all 39 duplicates...
Size#FoldersFilesLinesCode
16 x 2 beta/src/pages/blog
beta/src/pages/blog
39:54 (38%)
52:67 (20%)
view
13 x 2 beta/scripts
scripts
19:39 (19%)
12:32 (25%)
view
12 x 2 beta/src/components/Icon
beta/src/components/Icon
29:40 (37%)
31:42 (36%)
view
11 x 2 src/components/LayoutHeader
src/components/LayoutHeader
174:186 (4%)
199:211 (4%)
view
11 x 2 beta/scripts
scripts
69:84 (16%)
52:67 (21%)
view
10 x 2 src/templates
src/templates
28:41 (41%)
31:44 (37%)
view
10 x 2 src/templates
src/templates
33:46 (37%)
31:44 (37%)
view
10 x 2 src/pages
src/pages
162:171 (2%)
305:314 (2%)
view
10 x 2 src/components/LayoutFooter
src/utils
33:42 (34%)
44:53 (9%)
view
10 x 2 src/templates
src/templates
28:41 (41%)
33:46 (37%)
view
10 x 2 src/components/LayoutHeader
src/components/LayoutHeader
175:186 (4%)
230:241 (4%)
view
10 x 2 src/components/LayoutHeader
src/components/LayoutHeader
200:211 (4%)
230:241 (4%)
view
9 x 2 beta/src/components/Icon
beta/src/components/Icon
9:17 (69%)
9:17 (69%)
view
9 x 2 beta/public/js
static/js
7:16 (100%)
7:16 (100%)
view
9 x 2 beta/public/js
static/js
7:16 (100%)
7:16 (100%)
view
9 x 2 beta/src/components/MDX
beta/src/components/MDX
33:43 (15%)
27:37 (24%)
view
8 x 2 beta/plugins
plugins/gatsby-remark-header-custom-ids
12:23 (21%)
11:23 (17%)
view
7 x 2 beta/src/styles
beta/src/styles
5:11 (28%)
10:16 (5%)
view
7 x 2 beta/src/components/Icon
beta/src/components/Icon
9:15 (43%)
9:15 (35%)
view
7 x 2 src/components/ButtonLink
src/templates
54:61 (11%)
18:26 (14%)
view
7 x 2 beta/src/components/Icon
beta/src/components/Icon
13:19 (38%)
9:15 (53%)
view
7 x 2 beta/src/components/MDX/Challenges
beta/src/components/MDX/Challenges
183:189 (3%)
219:225 (3%)
view
7 x 2 beta/src/components/Icon
beta/src/components/Icon
14:20 (41%)
14:20 (33%)
view
7 x 2 beta/public/html
static/html
1:7 (46%)
1:7 (46%)
view
7 x 2 beta/public/html
static/html
12:19 (46%)
12:19 (46%)
view
7 x 2 src/components/LayoutHeader
src/components/StickyResponsiveSidebar
53:59 (2%)
159:165 (4%)
view
7 x 2 beta/src/components/Icon
beta/src/components/Icon
13:19 (38%)
9:15 (53%)
view
7 x 2 beta/src/components/MDX/Challenges
beta/src/components/MDX/Challenges
150:156 (3%)
160:166 (3%)
view
7 x 2 beta/src/pages/blog
beta/src/pages/blog
20:26 (16%)
29:35 (9%)
view
6 x 2 beta/scripts
scripts
99:106 (8%)
72:79 (11%)
view
6 x 2 beta/public/js
static/js
7:12 (66%)
7:12 (66%)
view
6 x 2 beta/public/js
beta/public/js
7:12 (66%)
7:12 (66%)
view
6 x 2 beta/src/components/Icon
beta/src/components/Icon
9:14 (33%)
9:14 (35%)
view
6 x 2 beta/plugins
plugins/gatsby-remark-header-custom-ids
61:67 (15%)
42:48 (13%)
view
6 x 2 src/components/LayoutFooter
src/components/LayoutFooter
23:28 (20%)
22:27 (35%)
view
6 x 2 static/js
static/js
7:12 (66%)
7:12 (66%)
view
6 x 2 src
src
176:181 (1%)
183:188 (1%)
view
6 x 2 src/components/CodeEditor
src/components/CodeEditor
164:169 (2%)
200:205 (2%)
view
6 x 2 beta/public/js
static/js
7:12 (66%)
7:12 (66%)
view
Duplicated Units
The list of top 5 duplicated units.
See data for all 5 unit duplicates...
Size#FoldersFilesLinesCode
12 x 3 beta/src/components/Icon
beta/src/components/Icon
beta/src/components/Icon
8:25 
8:22 
8:22 
view
13 x 5 beta/src/components/Icon
beta/src/components/Icon
beta/src/components/Icon
beta/src/components/Icon
beta/src/components/Icon
8:23 
8:23 
8:23 
8:23 
8:23 
view
10 x 3 src/templates
src/templates
src/templates
33:44 
31:42 
28:39 
view
8 x 4 beta/public/js
beta/public/js
static/js
static/js
7:16 
7:16 
7:16 
7:16 
view
12 x 3 src/templates
src/templates
src/templates
32:45 
30:43 
27:40 
view