microsoft / TailwindTraders-Backend
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
  • 39% duplication:
    • 7,376 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 2,915 duplicated lines
  • 594 duplicates
system39% (2,915 lines)
Duplication per Extension
yaml60% (1,762 lines)
cs39% (913 lines)
tpl36% (112 lines)
ps18% (64 lines)
js9% (52 lines)
yml9% (12 lines)
Duplication per Component (primary)
Source/ApiGWs/Tailwind.Traders.Bff61% (411 lines)
Source/ApiGWs/Tailwind.Traders.WebBff63% (344 lines)
Deploy/helm/mobilebff71% (195 lines)
Deploy/helm/webbff71% (195 lines)
Deploy/helm/products-api65% (166 lines)
Deploy/helm/login-api65% (161 lines)
Deploy/helm/image-classifier-api66% (159 lines)
Deploy/helm/coupons-api60% (158 lines)
Deploy/helm/popular-products-api63% (158 lines)
Deploy/helm/cart-api61% (157 lines)
Deploy/helm/profiles-api63% (150 lines)
Deploy/helm/stock-api60% (146 lines)
Deploy/helm/rewards-registration-api56% (135 lines)
Source/Services/Tailwind.Traders.Profile.Api25% (76 lines)
Source/Services/Tailwind.Traders.Product.Api15% (75 lines)
Source/Services/Tailwind.Traders.Login.Api27% (51 lines)
Source/Services/Tailwind.Traders.Cart.Api12% (45 lines)
Deploy/powershell6% (40 lines)
Source/Services/Tailwind.Traders.ImageClassifier.Api14% (29 lines)
Deploy19% (24 lines)
Deploy/helm/tls-support25% (21 lines)
Source9% (12 lines)
Source/Services/Tailwind.Traders.Coupon.Api4% (7 lines)
Deploy/helm0% (0 lines)
Deploy/helm/vnodes0% (0 lines)
Pipeline0% (0 lines)
Source/Services/Tailwind.Traders.PopularProduct.Api0% (0 lines)
Source/Services/Tailwind.Traders.Rewards.Registration.Api0% (0 lines)
Source/Services/Tailwind.Traders.Stock.Api0% (0 lines)
Source/build0% (0 lines)

Duplication Between Components (50+ lines)

G Source/ApiGWs/Tailwind.Traders.Bff Source/ApiGWs/Tailwind.Traders.Bff Source/ApiGWs/Tailwind.Traders.WebBff Source/ApiGWs/Tailwind.Traders.WebBff Source/ApiGWs/Tailwind.Traders.Bff--Source/ApiGWs/Tailwind.Traders.WebBff 673 Deploy/helm/mobilebff Deploy/helm/mobilebff Deploy/helm/webbff Deploy/helm/webbff Deploy/helm/mobilebff--Deploy/helm/webbff 378 Deploy/helm/products-api Deploy/helm/products-api Deploy/helm/mobilebff--Deploy/helm/products-api 305 Deploy/helm/profiles-api Deploy/helm/profiles-api Deploy/helm/mobilebff--Deploy/helm/profiles-api 284 Deploy/helm/popular-products-api Deploy/helm/popular-products-api Deploy/helm/mobilebff--Deploy/helm/popular-products-api 282 Deploy/helm/stock-api Deploy/helm/stock-api Deploy/helm/mobilebff--Deploy/helm/stock-api 280 Deploy/helm/products-api--Deploy/helm/webbff 305 Deploy/helm/products-api--Deploy/helm/profiles-api 285 Deploy/helm/products-api--Deploy/helm/stock-api 275 Deploy/helm/image-classifier-api Deploy/helm/image-classifier-api Deploy/helm/image-classifier-api--Deploy/helm/products-api 303 Deploy/helm/login-api Deploy/helm/login-api Deploy/helm/image-classifier-api--Deploy/helm/login-api 302 Deploy/helm/image-classifier-api--Deploy/helm/popular-products-api 302 Deploy/helm/image-classifier-api--Deploy/helm/webbff 296 Deploy/helm/image-classifier-api--Deploy/helm/mobilebff 296 Deploy/helm/image-classifier-api--Deploy/helm/profiles-api 284 Deploy/helm/image-classifier-api--Deploy/helm/stock-api 280 Deploy/helm/rewards-registration-api Deploy/helm/rewards-registration-api Deploy/helm/image-classifier-api--Deploy/helm/rewards-registration-api 258 Deploy/helm/login-api--Deploy/helm/products-api 299 Deploy/helm/login-api--Deploy/helm/popular-products-api 298 Deploy/helm/login-api--Deploy/helm/webbff 296 Deploy/helm/login-api--Deploy/helm/mobilebff 296 Deploy/helm/login-api--Deploy/helm/profiles-api 284 Deploy/helm/login-api--Deploy/helm/stock-api 280 Deploy/helm/login-api--Deploy/helm/rewards-registration-api 258 Deploy/helm/popular-products-api--Deploy/helm/products-api 299 Deploy/helm/popular-products-api--Deploy/helm/webbff 282 Deploy/helm/popular-products-api--Deploy/helm/profiles-api 282 Deploy/helm/popular-products-api--Deploy/helm/stock-api 280 Deploy/helm/popular-products-api--Deploy/helm/rewards-registration-api 258 Deploy/helm/coupons-api Deploy/helm/coupons-api Deploy/helm/coupons-api--Deploy/helm/popular-products-api 302 Deploy/helm/coupons-api--Deploy/helm/image-classifier-api 300 Deploy/helm/coupons-api--Deploy/helm/login-api 296 Deploy/helm/coupons-api--Deploy/helm/products-api 295 Deploy/helm/coupons-api--Deploy/helm/stock-api 280 Deploy/helm/coupons-api--Deploy/helm/webbff 280 Deploy/helm/coupons-api--Deploy/helm/profiles-api 280 Deploy/helm/coupons-api--Deploy/helm/mobilebff 280 Deploy/helm/cart-api Deploy/helm/cart-api Deploy/helm/cart-api--Deploy/helm/coupons-api 294 Deploy/helm/cart-api--Deploy/helm/popular-products-api 292 Deploy/helm/cart-api--Deploy/helm/login-api 288 Deploy/helm/cart-api--Deploy/helm/mobilebff 280 Deploy/helm/cart-api--Deploy/helm/profiles-api 280 Deploy/helm/cart-api--Deploy/helm/image-classifier-api 280 Deploy/helm/cart-api--Deploy/helm/webbff 280 Deploy/helm/cart-api--Deploy/helm/stock-api 280 Deploy/helm/cart-api--Deploy/helm/products-api 275 Deploy/helm/profiles-api--Deploy/helm/webbff 284 Deploy/helm/profiles-api--Deploy/helm/stock-api 280 Deploy/helm/profiles-api--Deploy/helm/rewards-registration-api 258 Deploy/helm/stock-api--Deploy/helm/webbff 280

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 594 duplicates...
Size#FoldersFilesLinesCode
68 x 2 Deploy/helm/popular-products-api/templates
Deploy/helm/rewards-registration-api/templates
deployment.yaml
deployment.yaml
24:91 (75%)
22:89 (76%)
view
68 x 2 Deploy/helm/image-classifier-api/templates
Deploy/helm/webbff/templates
deployment.yaml
deployment.yaml
22:89 (76%)
22:89 (76%)
view
68 x 2 Deploy/helm/login-api/templates
Deploy/helm/popular-products-api/templates
deployment.yaml
deployment.yaml
22:89 (76%)
24:91 (75%)
view
68 x 2 Deploy/helm/mobilebff/templates
Deploy/helm/webbff/templates
deployment.yaml
deployment.yaml
22:89 (76%)
22:89 (76%)
view
68 x 2 Deploy/helm/image-classifier-api/templates
Deploy/helm/profiles-api/templates
deployment.yaml
deployment.yaml
22:89 (76%)
22:89 (76%)
view
68 x 2 Deploy/helm/login-api/templates
Deploy/helm/rewards-registration-api/templates
deployment.yaml
deployment.yaml
22:89 (76%)
22:89 (76%)
view
68 x 2 Deploy/helm/popular-products-api/templates
Deploy/helm/webbff/templates
deployment.yaml
deployment.yaml
24:91 (75%)
22:89 (76%)
view
68 x 2 Deploy/helm/profiles-api/templates
Deploy/helm/rewards-registration-api/templates
deployment.yaml
deployment.yaml
22:89 (76%)
22:89 (76%)
view
68 x 2 Deploy/helm/mobilebff/templates
Deploy/helm/profiles-api/templates
deployment.yaml
deployment.yaml
22:89 (76%)
22:89 (76%)
view
68 x 2 Deploy/helm/image-classifier-api/templates
Deploy/helm/login-api/templates
deployment.yaml
deployment.yaml
22:89 (76%)
22:89 (76%)
view
68 x 2 Deploy/helm/image-classifier-api/templates
Deploy/helm/rewards-registration-api/templates
deployment.yaml
deployment.yaml
22:89 (76%)
22:89 (76%)
view
68 x 2 Deploy/helm/mobilebff/templates
Deploy/helm/rewards-registration-api/templates
deployment.yaml
deployment.yaml
22:89 (76%)
22:89 (76%)
view
68 x 2 Deploy/helm/login-api/templates
Deploy/helm/webbff/templates
deployment.yaml
deployment.yaml
22:89 (76%)
22:89 (76%)
view
68 x 2 Deploy/helm/profiles-api/templates
Deploy/helm/webbff/templates
deployment.yaml
deployment.yaml
22:89 (76%)
22:89 (76%)
view
68 x 2 Deploy/helm/mobilebff/templates
Deploy/helm/popular-products-api/templates
deployment.yaml
deployment.yaml
22:89 (76%)
24:91 (75%)
view
68 x 2 Deploy/helm/rewards-registration-api/templates
Deploy/helm/webbff/templates
deployment.yaml
deployment.yaml
22:89 (76%)
22:89 (76%)
view
68 x 2 Deploy/helm/login-api/templates
Deploy/helm/mobilebff/templates
deployment.yaml
deployment.yaml
22:89 (76%)
22:89 (76%)
view
68 x 2 Deploy/helm/image-classifier-api/templates
Deploy/helm/popular-products-api/templates
deployment.yaml
deployment.yaml
22:89 (76%)
24:91 (75%)
view
68 x 2 Deploy/helm/popular-products-api/templates
Deploy/helm/profiles-api/templates
deployment.yaml
deployment.yaml
24:91 (75%)
22:89 (76%)
view
68 x 2 Deploy/helm/login-api/templates
Deploy/helm/profiles-api/templates
deployment.yaml
deployment.yaml
22:89 (76%)
22:89 (76%)
view
Duplicated Units
The list of top 13 duplicated units.
See data for all 13 unit duplicates...
Size#FoldersFilesLinesCode
27 x 2 Source/ApiGWs/Tailwind.Traders.Bff/Controllers
Source/ApiGWs/Tailwind.Traders.WebBff/Controllers
ProductsController.cs
ProductsController.cs
129:164 
155:190 
view
21 x 2 Source/Services/Tailwind...Product.Api/HealthCheck
Source/Services/Tailwind...Profile.Api/HealthCheck
CosmosDbHealthCheck.cs
CosmosDbHealthCheck.cs
23:47 
22:46 
view
17 x 2 Source/ApiGWs/Tailwind.Traders.Bff/Controllers
Source/ApiGWs/Tailwind.Traders.WebBff/Controllers
LoginController.cs
LoginController.cs
39:61 
38:60 
view
16 x 2 Source/ApiGWs/Tailwind.Traders.Bff/Controllers
Source/ApiGWs/Tailwind.Traders.WebBff/Controllers
ProfilesController.cs
ProfilesController.cs
48:68 
48:68 
view
13 x 2 Source/ApiGWs/Tailwind.Traders.Bff/Controllers
Source/ApiGWs/Tailwind.Traders.WebBff/Controllers
AuthController.cs
AuthController.cs
34:51 
34:51 
view
13 x 2 Source/ApiGWs/Tailwind.Traders.Bff/Controllers
Source/ApiGWs/Tailwind.Traders.WebBff/Controllers
CouponsController.cs
CouponsController.cs
37:53 
42:58 
view
10 x 2 Source/ApiGWs/Tailwind.Traders.Bff/Controllers
Source/ApiGWs/Tailwind.Traders.WebBff/Controllers
ProductsController.cs
ProductsController.cs
40:51 
42:53 
view
10 x 2 Source/ApiGWs/Tailwind.Traders.Bff/Controllers
Source/ApiGWs/Tailwind.Traders.WebBff/Controllers
ProfilesController.cs
ProfilesController.cs
73:85 
73:86 
view
9 x 2 Source/ApiGWs/Tailwind.Traders.Bff/Infrastructure
Source/ApiGWs/Tailwind.T...s.WebBff/Infrastructure
LPKMessageHandler.cs
LPKMessageHandler.cs
19:29 
19:29 
view
9 x 2 Source/Services/Tailwind.Traders.Cart.Api/models
Source/Services/Tailwind.Traders.Cart.Api/models
recommendedDao.js
shoppingCartDao.js
11:20 
11:20 
view
8 x 2 Source/ApiGWs/Tailwind.Traders.Bff/Controllers
Source/ApiGWs/Tailwind.Traders.WebBff/Controllers
LoginController.cs
LoginController.cs
27:35 
26:34 
view
6 x 5 Source/ApiGWs/Tailwind.Traders.Bff/Controllers
Source/ApiGWs/Tailwind.Traders.Bff/Controllers
Source/ApiGWs/Tailwind.Traders.Bff/Controllers
Source/ApiGWs/Tailwind.Traders.WebBff/Controllers
Source/ApiGWs/Tailwind.Traders.WebBff/Controllers
AuthController.cs
CouponsController.cs
ProfilesController.cs
AuthController.cs
ProfilesController.cs
24:30 
26:32 
24:30 
24:30 
24:30 
view
6 x 2 Source/ApiGWs/Tailwind.Traders.Bff/Controllers
Source/ApiGWs/Tailwind.Traders.WebBff/Controllers
ProfilesController.cs
ProfilesController.cs
35:43 
35:43 
view