guardian/interactive-elex-preview
Duplication Places in code with 6 or more lines that are exactly the same. |
Duplication Overall
- 9% duplication:
- 6,301 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
- 597 duplicated lines
- 416 duplicates
Duplication per Extension
Duplication per Component (primary)
Duplication Between Components (50+ lines)
flowchart TB
n0["atoms"]
n1["shared"]
n0 ---|"52"| n1
classDef default fill:#00b2ee,stroke:#ffffff,color:#000000;
classDef highlighted fill:#00b2ee,stroke:#ffffff,color:#000000;
linkStyle 0 stroke:#DC143CFF,stroke-width:10px
Download:
Mermaid (.mmd)
(open online Mermaid editor)
2D force graph
|
3D force graph
Show more details on duplication between components...
From Component
--> To Component
Duplicated
Lines
File Pairs
Details
atoms (<1%)
  --> shared (2%)
52
1 file pair
details...
flowchart TB
n0["atoms"]
n1["shared"]
n0 ---|"52"| n1
classDef default fill:#00b2ee,stroke:#ffffff,color:#000000;
classDef highlighted fill:#00b2ee,stroke:#ffffff,color:#000000;
linkStyle 0 stroke:#DC143CFF,stroke-width:10px
Show more details on duplication between components...
| From Component --> To Component |
Duplicated Lines |
File Pairs | Details |
|---|---|---|---|
| atoms (<1%)   --> shared (2%) |
52 | 1 file pair | details... |
Longest Duplicates
The list of 50 longest duplicates.
| Size | # | Folders | Files | Lines | Code |
|---|---|---|---|---|---|
| 11 | x 2 | atoms/default/client/cssatoms/default/client/css | 115:126 (<1%)186:197 (<1%) | view | |
| 11 | x 2 | atoms/default/client/cssatoms/default/client/css | 693:704 (<1%)764:775 (<1%) | view | |
| 11 | x 2 | atoms/default/client/cssatoms/default/client/css | 693:704 (<1%)1271:1282 (<1%) | view | |
| 11 | x 2 | atoms/default/client/cssatoms/default/client/css | 693:704 (<1%)1342:1353 (<1%) | view | |
| 11 | x 2 | atoms/default/client/cssatoms/default/client/css | 764:775 (<1%)1271:1282 (<1%) | view | |
| 11 | x 2 | atoms/default/client/cssatoms/default/client/css | 764:775 (<1%)1342:1353 (<1%) | view | |
| 11 | x 2 | atoms/default/client/cssatoms/default/client/css | 1271:1282 (<1%)1342:1353 (<1%) | view | |
| 11 | x 2 | atoms/default/client/cssatoms/default/client/css | 1849:1860 (<1%)1920:1931 (<1%) | view | |
| 11 | x 2 | atoms/default/client/cssatoms/default/client/css | 1849:1860 (<1%)2427:2438 (<1%) | view | |
| 11 | x 2 | atoms/default/client/cssatoms/default/client/css | 1849:1860 (<1%)2498:2509 (<1%) | view | |
| 11 | x 2 | atoms/default/client/cssatoms/default/client/css | 1920:1931 (<1%)2427:2438 (<1%) | view | |
| 11 | x 2 | atoms/default/client/cssatoms/default/client/css | 1920:1931 (<1%)2498:2509 (<1%) | view | |
| 11 | x 2 | atoms/default/client/cssatoms/default/client/css | 2427:2438 (<1%)2498:2509 (<1%) | view | |
| 11 | x 2 | atoms/default/client/cssatoms/default/client/css | 3005:3016 (<1%)3076:3087 (<1%) | view | |
| 11 | x 2 | atoms/default/client/cssatoms/default/client/css | 3583:3594 (<1%)3654:3665 (<1%) | view | |
| 10 | x 2 | atoms/default/client/cssatoms/default/client/css | 404:414 (<1%)472:482 (<1%) | view | |
| 10 | x 2 | atoms/default/client/cssatoms/default/client/css | 982:992 (<1%)1050:1060 (<1%) | view | |
| 10 | x 2 | atoms/default/client/cssatoms/default/client/css | 982:992 (<1%)1560:1570 (<1%) | view | |
| 10 | x 2 | atoms/default/client/cssatoms/default/client/css | 982:992 (<1%)1628:1638 (<1%) | view | |
| 10 | x 2 | atoms/default/client/cssatoms/default/client/css | 1050:1060 (<1%)1560:1570 (<1%) | view | |
| 10 | x 2 | atoms/default/client/cssatoms/default/client/css | 1050:1060 (<1%)1628:1638 (<1%) | view | |
| 10 | x 2 | atoms/default/client/cssatoms/default/client/css | 1560:1570 (<1%)1628:1638 (<1%) | view | |
| 10 | x 2 | atoms/default/client/cssatoms/default/client/css | 2138:2148 (<1%)2206:2216 (<1%) | view | |
| 10 | x 2 | atoms/default/client/cssatoms/default/client/css | 2138:2148 (<1%)2716:2726 (<1%) | view | |
| 10 | x 2 | atoms/default/client/cssatoms/default/client/css | 2138:2148 (<1%)2784:2794 (<1%) | view | |
| 10 | x 2 | atoms/default/client/cssatoms/default/client/css | 2206:2216 (<1%)2716:2726 (<1%) | view | |
| 10 | x 2 | atoms/default/client/cssatoms/default/client/css | 2206:2216 (<1%)2784:2794 (<1%) | view | |
| 10 | x 2 | atoms/default/client/cssatoms/default/client/css | 2716:2726 (<1%)2784:2794 (<1%) | view | |
| 10 | x 2 | atoms/default/client/cssatoms/default/client/css | 3294:3304 (<1%)3362:3372 (<1%) | view | |
| 10 | x 2 | atoms/default/client/cssatoms/default/client/css | 3872:3882 (<1%)3940:3950 (<1%) | view | |
| 8 | x 2 | atoms/default/client/cssatoms/default/client/css | 49:56 (<1%)343:350 (<1%) | view | |
| 8 | x 2 | atoms/default/client/cssatoms/default/client/css | 49:56 (<1%)627:634 (<1%) | view | |
| 8 | x 2 | atoms/default/client/cssatoms/default/client/css | 49:56 (<1%)921:928 (<1%) | view | |
| 8 | x 2 | atoms/default/client/cssatoms/default/client/css | 49:56 (<1%)1205:1212 (<1%) | view | |
| 8 | x 2 | atoms/default/client/cssatoms/default/client/css | 49:56 (<1%)1499:1506 (<1%) | view | |
| 8 | x 2 | atoms/default/client/cssatoms/default/client/css | 49:56 (<1%)1783:1790 (<1%) | view | |
| 8 | x 2 | atoms/default/client/cssatoms/default/client/css | 49:56 (<1%)2077:2084 (<1%) | view | |
| 8 | x 2 | atoms/default/client/cssatoms/default/client/css | 49:56 (<1%)2361:2368 (<1%) | view | |
| 8 | x 2 | atoms/default/client/cssatoms/default/client/css | 49:56 (<1%)2655:2662 (<1%) | view | |
| 8 | x 2 | atoms/default/client/cssatoms/default/client/css | 49:56 (<1%)2939:2946 (<1%) | view | |
| 8 | x 2 | atoms/default/client/cssatoms/default/client/css | 49:56 (<1%)3233:3240 (<1%) | view | |
| 8 | x 2 | atoms/default/client/cssatoms/default/client/css | 49:56 (<1%)3517:3524 (<1%) | view | |
| 8 | x 2 | atoms/default/client/cssatoms/default/client/css | 49:56 (<1%)3811:3818 (<1%) | view | |
| 8 | x 2 | atoms/default/client/cssatoms/default/client/css | 115:122 (<1%)404:411 (<1%) | view | |
| 8 | x 2 | atoms/default/client/cssatoms/default/client/css | 115:122 (<1%)472:479 (<1%) | view | |
| 8 | x 2 | atoms/default/client/cssatoms/default/client/css | 186:193 (<1%)404:411 (<1%) | view | |
| 8 | x 2 | atoms/default/client/cssatoms/default/client/css | 186:193 (<1%)472:479 (<1%) | view | |
| 8 | x 2 | atoms/default/client/cssatoms/default/client/css | 343:350 (<1%)627:634 (<1%) | view | |
| 8 | x 2 | atoms/default/client/cssatoms/default/client/css | 343:350 (<1%)921:928 (<1%) | view | |
| 8 | x 2 | atoms/default/client/cssatoms/default/client/css | 343:350 (<1%)1205:1212 (<1%) | view |
Most Frequent Duplicates
The list of 27 most frequently found duplicates.
| Size | # | Folders | Files | Lines | Code |
|---|---|---|---|---|---|
| 6 | x 14 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css... | 120:126 (<1%)191:197 (<1%)698:704 (<1%)769:775 (<1%)1276:1282 (<1%)1347:1353 (<1%)1854:1860 (<1%)1925:1931 (<1%)2432:2438 (<1%)2503:2509 (<1%)... | view | |
| 6 | x 14 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css... | 50:55 (<1%)344:349 (<1%)628:633 (<1%)922:927 (<1%)1206:1211 (<1%)1500:1505 (<1%)1784:1789 (<1%)2078:2083 (<1%)2362:2367 (<1%)2656:2661 (<1%)... | view | |
| 6 | x 14 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css... | 51:56 (<1%)345:350 (<1%)629:634 (<1%)923:928 (<1%)1207:1212 (<1%)1501:1506 (<1%)1785:1790 (<1%)2079:2084 (<1%)2363:2368 (<1%)2657:2662 (<1%)... | view | |
| 6 | x 14 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css... | 408:414 (<1%)476:482 (<1%)986:992 (<1%)1054:1060 (<1%)1564:1570 (<1%)1632:1638 (<1%)2142:2148 (<1%)2210:2216 (<1%)2720:2726 (<1%)2788:2794 (<1%)... | view | |
| 6 | x 14 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css... | 119:125 (<1%)190:196 (<1%)697:703 (<1%)768:774 (<1%)1275:1281 (<1%)1346:1352 (<1%)1853:1859 (<1%)1924:1930 (<1%)2431:2437 (<1%)2502:2508 (<1%)... | view | |
| 6 | x 14 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css... | 102:107 (<1%)392:397 (<1%)680:685 (<1%)970:975 (<1%)1258:1263 (<1%)1548:1553 (<1%)1836:1841 (<1%)2126:2131 (<1%)2414:2419 (<1%)2704:2709 (<1%)... | view | |
| 6 | x 14 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css... | 49:54 (<1%)343:348 (<1%)627:632 (<1%)921:926 (<1%)1205:1210 (<1%)1499:1504 (<1%)1783:1788 (<1%)2077:2082 (<1%)2361:2366 (<1%)2655:2660 (<1%)... | view | |
| 6 | x 8 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css | 1851:1856 (<1%)1922:1927 (<1%)2140:2145 (<1%)2208:2213 (<1%)2429:2434 (<1%)2500:2505 (<1%)2718:2723 (<1%)2786:2791 (<1%) | view | |
| 6 | x 8 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css | 694:699 (<1%)765:770 (<1%)983:988 (<1%)1051:1056 (<1%)1272:1277 (<1%)1343:1348 (<1%)1561:1566 (<1%)1629:1634 (<1%) | view | |
| 6 | x 8 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css | 1849:1854 (<1%)1920:1925 (<1%)2138:2143 (<1%)2206:2211 (<1%)2427:2432 (<1%)2498:2503 (<1%)2716:2721 (<1%)2784:2789 (<1%) | view | |
| 6 | x 8 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css | 1850:1855 (<1%)1921:1926 (<1%)2139:2144 (<1%)2207:2212 (<1%)2428:2433 (<1%)2499:2504 (<1%)2717:2722 (<1%)2785:2790 (<1%) | view | |
| 6 | x 8 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css | 693:698 (<1%)764:769 (<1%)982:987 (<1%)1050:1055 (<1%)1271:1276 (<1%)1342:1347 (<1%)1560:1565 (<1%)1628:1633 (<1%) | view | |
| 6 | x 8 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css | 695:700 (<1%)766:771 (<1%)984:989 (<1%)1052:1057 (<1%)1273:1278 (<1%)1344:1349 (<1%)1562:1567 (<1%)1630:1635 (<1%) | view | |
| 6 | x 7 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css | 103:109 (<1%)681:687 (<1%)1259:1265 (<1%)1837:1843 (<1%)2415:2421 (<1%)2993:2999 (<1%)3571:3577 (<1%) | view | |
| 6 | x 4 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css | 1852:1857 (<1%)1923:1928 (<1%)2430:2435 (<1%)2501:2506 (<1%) | view | |
| 6 | x 4 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css | 3585:3590 (<1%)3656:3661 (<1%)3874:3879 (<1%)3942:3947 (<1%) | view | |
| 6 | x 4 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css | 117:122 (<1%)188:193 (<1%)406:411 (<1%)474:479 (<1%) | view | |
| 6 | x 4 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css | 985:991 (<1%)1053:1059 (<1%)1563:1569 (<1%)1631:1637 (<1%) | view | |
| 6 | x 4 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css | 116:121 (<1%)187:192 (<1%)405:410 (<1%)473:478 (<1%) | view | |
| 6 | x 4 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css | 696:701 (<1%)767:772 (<1%)1274:1279 (<1%)1345:1350 (<1%) | view | |
| 6 | x 4 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css | 3584:3589 (<1%)3655:3660 (<1%)3873:3878 (<1%)3941:3946 (<1%) | view | |
| 6 | x 4 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css | 3583:3588 (<1%)3654:3659 (<1%)3872:3877 (<1%)3940:3945 (<1%) | view | |
| 6 | x 4 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css | 3007:3012 (<1%)3078:3083 (<1%)3296:3301 (<1%)3364:3369 (<1%) | view | |
| 6 | x 4 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css | 2141:2147 (<1%)2209:2215 (<1%)2719:2725 (<1%)2787:2793 (<1%) | view | |
| 6 | x 4 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css | 115:120 (<1%)186:191 (<1%)404:409 (<1%)472:477 (<1%) | view | |
| 6 | x 4 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css | 3005:3010 (<1%)3076:3081 (<1%)3294:3299 (<1%)3362:3367 (<1%) | view | |
| 6 | x 4 | atoms/default/client/cssatoms/default/client/cssatoms/default/client/cssatoms/default/client/css | 3006:3011 (<1%)3077:3082 (<1%)3295:3300 (<1%)3363:3368 (<1%) | view |
About This Analysis
- 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...
- To learn more about duplications and techniques for eliminating duplication, Sokrates recommends the following resources:
- Avoid Repetition, MartinFlower.com (IEEE Software article)
- Refactoring duplicated code, sourcemaking.com
- Beck Design Rules, MartinFowler.com
- DRY (Don't Repeat Yourself) Principle, Wikipedia
- The Cut-and-Paste Programming Software Development Anti-Pattern, sourcemaking.com
- Code Smells / Duplicated Code, Jeff Atwood, codinghorror.com:
- "Duplicated code is the bane of software development. Stamp out duplication whenever possible. You should always be on the lookout for more subtle cases of near-duplication, too. Don't Repeat Yourself!"
- Reducing Coupling, MartinFlower.com (IEEE Software article):
- "There are several ways to describe coupling, but it boils down to this: If changing one module in a program requires changing another module, then coupling exists. ... Duplication always implies coupling, because changing one piece of duplicate code implies changing the other."