aws-solutions / aws-data-lake-solution
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
  • 28% duplication:
    • 18,244 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 5,225 duplicated lines
  • 3,628 duplicates
system28% (5,225 lines)
Duplication per Extension
js32% (5,209 lines)
css1% (16 lines)
Duplication per Component (primary)
source/api/services/admin54% (1,047 lines)
source/console/app/common49% (930 lines)
source/api/services/package38% (673 lines)
source/cli61% (489 lines)
source/console/app/lib6% (292 lines)
source/api/services/search51% (288 lines)
source/api/services/cart49% (261 lines)
source/console/app/admin15% (162 lines)
source/api/services/profile63% (161 lines)
source/api/authorizer38% (141 lines)
source/console/app/package14% (134 lines)
source/resources/helper/lib12% (103 lines)
source/api/services/manifest17% (77 lines)
source/cli/core100% (73 lines)
source/resources/loader/core100% (73 lines)
source/api/services/logging36% (64 lines)
source/resources/helper16% (56 lines)
source/console/app/search19% (47 lines)
source/resources/access-validator34% (45 lines)
source/console/app/profile15% (31 lines)
source/console/app13% (18 lines)
source/console/app/forgot14% (15 lines)
source/console/app/cart8% (14 lines)
source/resources/loader13% (9 lines)
source/console/app/confirm12% (8 lines)
source/console/app/styles2% (8 lines)
source/console/app/signin7% (6 lines)
source/console/app/dashboard0% (0 lines)
source/console/app/main0% (0 lines)
deployment/manifest-generator0% (0 lines)

Duplication Between Components (50+ lines)

G source/api/services/admin source/api/services/admin source/api/services/package source/api/services/package source/api/services/admin--source/api/services/package 1091 source/api/services/cart source/api/services/cart source/api/services/admin--source/api/services/cart 771 source/api/services/search source/api/services/search source/api/services/admin--source/api/services/search 652 source/api/services/profile source/api/services/profile source/api/services/admin--source/api/services/profile 394 source/resources/helper/lib source/resources/helper/lib source/api/services/admin--source/resources/helper/lib 119 source/api/services/manifest source/api/services/manifest source/api/services/admin--source/api/services/manifest 86 source/resources/access-validator source/resources/access-validator source/api/services/admin--source/resources/access-validator 112 source/api/services/logging source/api/services/logging source/api/services/admin--source/api/services/logging 86 source/api/services/package--source/api/services/search 554 source/api/services/package--source/api/services/profile 405 source/api/services/cart--source/api/services/package 644 source/api/services/cart--source/api/services/search 385 source/api/services/cart--source/api/services/profile 276 source/api/services/cart--source/api/services/manifest 76 source/api/services/profile--source/api/services/search 241 source/api/authorizer source/api/authorizer source/api/authorizer--source/api/services/admin 319 source/api/authorizer--source/api/services/package 50 source/cli/core source/cli/core source/resources/loader/core source/resources/loader/core source/cli/core--source/resources/loader/core 146 source/api/services/manifest--source/api/services/package 115 source/api/services/manifest--source/api/services/search 52 source/api/services/manifest--source/api/services/profile 52 source/console/app/admin source/console/app/admin source/console/app/package source/console/app/package source/console/app/admin--source/console/app/package 106 source/console/app/search source/console/app/search source/console/app/package--source/console/app/search 94 source/console/app/profile source/console/app/profile source/console/app/package--source/console/app/profile 62 source/console/app/profile--source/console/app/search 58

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 20 longest duplicates.
See data for all 3,628 duplicates...
Size#FoldersFilesLinesCode
61 x 2 source/api/services/package/lib
source/api/services/profile/lib
access-log.js
access-log.js
18:133 (100%)
18:133 (100%)
view
61 x 2 source/api/services/admin/lib
source/api/services/search/lib
access-log.js
access-log.js
18:132 (100%)
18:133 (100%)
view
61 x 2 source/api/services/cart/lib
source/api/services/package/lib
access-log.js
access-log.js
18:133 (100%)
18:133 (100%)
view
61 x 2 source/api/services/cart/lib
source/api/services/profile/lib
access-log.js
access-log.js
18:133 (100%)
18:133 (100%)
view
61 x 2 source/api/services/package/lib
source/api/services/search/lib
access-log.js
access-log.js
18:133 (100%)
18:133 (100%)
view
61 x 2 source/api/services/cart/lib
source/api/services/search/lib
access-log.js
access-log.js
18:133 (100%)
18:133 (100%)
view
61 x 2 source/api/services/admin/lib
source/api/services/profile/lib
access-log.js
access-log.js
18:132 (100%)
18:133 (100%)
view
61 x 2 source/api/services/admin/lib
source/api/services/package/lib
access-log.js
access-log.js
18:132 (100%)
18:133 (100%)
view
61 x 2 source/api/services/profile/lib
source/api/services/search/lib
access-log.js
access-log.js
18:133 (100%)
18:133 (100%)
view
61 x 2 source/api/services/admin/lib
source/api/services/cart/lib
access-log.js
access-log.js
18:132 (100%)
18:133 (100%)
view
44 x 2 source/cli/core
source/resources/loader/core
apiproxy.js
apiproxy.js
1:62 (100%)
1:62 (100%)
view
38 x 2 source/api/services/admin/lib
source/resources/access-validator
group.js
access-validator.js
323:369 (13%)
163:209 (28%)
view
37 x 2 source/console/app/lib/aws-ui/AWS-UI-Components
source/console/app/lib/aws-ui/AWS-UI-Components
components.js
components.js
4796:4843 (<1%)
4958:5005 (<1%)
view
36 x 2 source/api/services/package/lib
source/api/services/search/lib
index.js
index.js
39:92 (8%)
50:105 (27%)
view
30 x 2 source/api/services/cart/lib
source/api/services/search/lib
index.js
index.js
185:224 (18%)
168:209 (22%)
view
29 x 2 source/cli/core
source/resources/loader/core
credentials.js
credentials.js
1:47 (100%)
1:47 (100%)
view
28 x 2 source/api/services/admin/lib
source/resources/helper/lib
user.js
cognito-helper.js
494:533 (8%)
346:385 (10%)
view
27 x 2 source/console/app/lib/aws-ui/AWS-UI-Components
source/console/app/lib/aws-ui/AWS-UI-Components
components.js
components.js
4865:4899 (<1%)
5030:5064 (<1%)
view
25 x 2 source/console/app/package
source/console/app/profile
package.js
profile.js
852:879 (3%)
102:130 (26%)
view
24 x 2 source/api/services/admin/lib
source/api/services/admin/lib
group.js
group.js
56:86 (8%)
327:357 (8%)
view
Duplicated Units
The list of top 20 duplicated units.
See data for all 31 unit duplicates...
Size#FoldersFilesLinesCode
34 x 2 source/api/services/cart/lib
source/api/services/package/lib
index.js
index.js
35:75 
38:78 
view
30 x 5 source/api/services/cart/lib
source/api/services/admin/lib
source/api/services/profile/lib
source/api/services/search/lib
source/api/services/package/lib
access-log.js
access-log.js
access-log.js
access-log.js
access-log.js
57:96 
57:96 
57:96 
57:96 
57:96 
view
27 x 2 source/cli/core
source/resources/loader/core
apiproxy.js
apiproxy.js
8:43 
8:43 
view
22 x 2 source/cli/core
source/resources/loader/core
credentials.js
credentials.js
10:41 
10:41 
view
20 x 5 source/api/services/cart/lib
source/api/services/admin/lib
source/api/services/profile/lib
source/api/services/search/lib
source/api/services/package/lib
access-log.js
access-log.js
access-log.js
access-log.js
access-log.js
105:127 
105:126 
105:127 
105:127 
105:127 
view
19 x 2 source/api/services/profile/lib
source/api/services/package/lib
profile.js
content-package.js
126:148 
827:848 
view
17 x 2 source/api/services/admin/lib
source/resources/helper/lib
user.js
cognito-helper.js
501:519 
353:371 
view
17 x 2 source/console/app/admin/users
source/console/app/admin/users
user.js
user.js
290:311 
313:333 
view
16 x 2 source/console/app/admin/users
source/console/app/package
user.js
package.js
150:166 
179:195 
view
12 x 2 source/console/app/common/factories
source/console/app/common/factories
packageFactory.js
packageFactory.js
336:348 
469:481 
view
11 x 2 source/cli/core
source/resources/loader/core
apiproxy.js
apiproxy.js
45:56 
45:56 
view
10 x 5 source/api/services/cart
source/api/services/admin
source/api/services/profile
source/api/services/search
source/api/services/package
index.js
index.js
index.js
index.js
index.js
23:35 
6:18 
23:35 
19:31 
19:31 
view
10 x 2 source/api/services/manifest
source/api/services/logging
index.js
index.js
23:35 
6:18 
view
10 x 3 source/console/app/common/factories
source/console/app/common/factories
source/console/app/common/factories
searchFactory.js
searchFactory.js
adminFactory.js
26:36 
38:48 
289:299 
view
10 x 3 source/console/app/common/factories
source/console/app/common/factories
source/console/app/common/factories
profileFactory.js
profileFactory.js
adminFactory.js
26:36 
38:48 
628:638 
view
10 x 2 source/resources/helper
source/resources/helper
index.js
index.js
184:195 
244:255 
view
9 x 3 source/api/services/cart/lib
source/api/services/admin/lib
source/api/services/search/lib
index.js
index.js
index.js
213:224 
734:745 
198:209 
view
9 x 2 source/api/services/profile/lib
source/api/services/package/lib
index.js
index.js
156:167 
508:519 
view
9 x 2 source/api/services/logging/lib
source/api/services/logging/lib
logging.js
logging.js
112:122 
126:136 
view
8 x 2 source/api/services/admin/lib
source/resources/helper/lib
user.js
cognito-helper.js
524:533 
376:385 
view