aws-samples / dotnet-share-auth-cookie-between-monolith-and-modernized-apps
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
  • 35% duplication:
    • 16,894 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 5,922 duplicated lines
  • 44 duplicates
system35% (5,922 lines)
Duplication per Extension
js81% (5,614 lines)
cs22% (172 lines)
css1% (136 lines)
Duplication per Component (primary)
Legacy.Monolith/Scripts81% (5,614 lines)
Legacy.Monolith/Content1% (136 lines)
Modernized.Backend.ServiceA65% (38 lines)
Modernized.Backend.ServiceB65% (38 lines)
Modernized.Backend.ServiceA/Services100% (23 lines)
Modernized.Backend.ServiceB/Services100% (23 lines)
Modernized.Infrastructure7% (20 lines)
Modernized.Lambda.Authorizer/Services83% (15 lines)
Legacy.Monolith/Services36% (8 lines)
Modernized.Lambda.Authorizer11% (7 lines)
Modernized.Backend.ServiceA/Controllers0% (0 lines)
Modernized.Lambda.Authorizer/Error0% (0 lines)
Legacy.Monolith/Properties0% (0 lines)
Legacy.Monolith0% (0 lines)
Legacy.Monolith/Views0% (0 lines)
Legacy.Monolith/App_Start0% (0 lines)
Legacy.Monolith/Controllers0% (0 lines)
Legacy.Monolith/Models0% (0 lines)
Modernized.Backend.ServiceB/Controllers0% (0 lines)

Duplication Between Components (50+ lines)

G Modernized.Backend.ServiceA Modernized.Backend.ServiceA Modernized.Backend.ServiceB Modernized.Backend.ServiceB Modernized.Backend.ServiceA--Modernized.Backend.ServiceB 76

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 44 duplicates...
Size#FoldersFilesLinesCode
972 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.bundle.js
bootstrap.esm.js
221:1943 (23%)
217:1939 (34%)
view
711 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.bundle.js
bootstrap.esm.js
4268:5442 (17%)
2510:3684 (25%)
view
348 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.bundle.js
bootstrap.esm.js
5564:6160 (8%)
3806:4402 (12%)
view
298 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.bundle.js
bootstrap.esm.js
6163:6722 (7%)
4405:4964 (10%)
view
167 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.bundle.js
bootstrap.esm.js
3942:4266 (4%)
2184:2508 (5%)
view
90 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.bundle.js
bootstrap.esm.js
3711:3834 (2%)
1953:2076 (3%)
view
89 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.bundle.js
bootstrap.esm.js
24:180 (2%)
20:176 (3%)
view
68 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.bundle.js
bootstrap.esm.js
5446:5560 (1%)
3688:3802 (2%)
view
48 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.bundle.js
bootstrap.esm.js
3846:3938 (1%)
2088:2180 (1%)
view
23 x 2 Modernized.Backend.ServiceA
Modernized.Backend.ServiceB
Startup.cs
Startup.cs
42:82 (46%)
43:82 (46%)
view
23 x 2 Modernized.Backend.ServiceA/Services
Modernized.Backend.ServiceB/Services
CustomPersistKeysToAWSParameterStore.cs
CustomPersistKeysToAWSParameterStore.cs
1:85 (100%)
1:85 (100%)
view
16 x 2 Legacy.Monolith/Content
Legacy.Monolith/Content
bootstrap.rtl.css
bootstrap.rtl.css
5504:5519 (<1%)
5606:5621 (<1%)
view
12 x 2 Legacy.Monolith/Content
Legacy.Monolith/Content
bootstrap.rtl.css
bootstrap.rtl.css
2202:2213 (<1%)
2225:2236 (<1%)
view
10 x 2 Modernized.Infrastructure
Modernized.Infrastructure
InfrastructureStack.cs
InfrastructureStack.cs
254:267 (4%)
351:364 (4%)
view
9 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.esm.js
bootstrap.esm.js
2219:2232 (<1%)
3866:3879 (<1%)
view
9 x 2 Modernized.Backend.ServiceB/Services
Modernized.Lambda.Authorizer/Services
CustomPersistKeysToAWSParameterStore.cs
CustomPersistKeysToAWSParameterStore.cs
45:85 (39%)
34:74 (50%)
view
9 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.bundle.js
bootstrap.esm.js
5624:5637 (<1%)
2219:2232 (<1%)
view
9 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.bundle.js
bootstrap.esm.js
3977:3990 (<1%)
3866:3879 (<1%)
view
9 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.bundle.js
bootstrap.esm.js
197:210 (<1%)
193:206 (<1%)
view
9 x 2 Legacy.Monolith/Content
Legacy.Monolith/Content
bootstrap.rtl.css
bootstrap.rtl.css
2736:2744 (<1%)
2825:2833 (<1%)
view
Duplicated Units
The list of top 20 duplicated units.
See data for all 133 unit duplicates...
Size#FoldersFilesLinesCode
61 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.esm.js
bootstrap.bundle.js
1393:1475 
1397:1479 
view
61 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.esm.js
bootstrap.bundle.js
1678:1762 
1682:1766 
view
48 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.esm.js
bootstrap.bundle.js
606:664 
610:668 
view
38 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.esm.js
bootstrap.bundle.js
485:531 
489:535 
view
38 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.esm.js
bootstrap.bundle.js
1267:1320 
1271:1324 
view
38 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.esm.js
bootstrap.bundle.js
3882:3920 
5640:5678 
view
37 x 2 Modernized.Backend.ServiceA
Modernized.Backend.ServiceB
Startup.cs
Startup.cs
26:74 
26:74 
view
35 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.esm.js
bootstrap.bundle.js
4588:4631 
6346:6389 
view
34 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.esm.js
bootstrap.bundle.js
3720:3770 
5478:5528 
view
33 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.esm.js
bootstrap.bundle.js
1764:1813 
1768:1817 
view
33 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.esm.js
bootstrap.bundle.js
4650:4695 
6408:6453 
view
31 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.esm.js
bootstrap.bundle.js
2297:2339 
4055:4097 
view
31 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.esm.js
bootstrap.bundle.js
2839:2885 
4597:4643 
view
29 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.esm.js
bootstrap.bundle.js
2345:2391 
4103:4149 
view
29 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.esm.js
bootstrap.bundle.js
4041:4076 
5799:5834 
view
28 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.esm.js
bootstrap.bundle.js
569:604 
573:608 
view
28 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.esm.js
bootstrap.bundle.js
2724:2763 
4482:4521 
view
27 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.esm.js
bootstrap.bundle.js
2967:3002 
4725:4760 
view
27 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.esm.js
bootstrap.bundle.js
3154:3193 
4912:4951 
view
27 x 2 Legacy.Monolith/Scripts
Legacy.Monolith/Scripts
bootstrap.esm.js
bootstrap.bundle.js
3420:3453 
5178:5211 
view