android / compose-samples
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
  • 7% duplication:
    • 15,105 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 1,145 duplicated lines
  • 98 duplicates
system7% (1,145 lines)
Duplication per Extension
kt7% (1,145 lines)
Duplication per Component (primary)
Jetsnack/app8% (277 lines)
Jetsurvey/app12% (226 lines)
JetNews/app6% (224 lines)
Jetcaster/app8% (185 lines)
Owl/app2% (42 lines)
Jetsurvey/buildSrc60% (40 lines)
Jetchat/buildSrc50% (37 lines)
Owl/buildSrc42% (24 lines)
Jetcaster/buildSrc30% (24 lines)
Jetchat/app1% (24 lines)
Jetsnack/buildSrc37% (23 lines)
Crane/buildSrc26% (19 lines)
Jetsnack/spotless0% (0 lines)
JetNews/spotless0% (0 lines)
Owl/spotless0% (0 lines)
Jetsurvey/spotless0% (0 lines)
Jetchat/spotless0% (0 lines)
Crane/spotless0% (0 lines)
Jetcaster/spotless0% (0 lines)

Duplication Between Components (50+ lines)

G Jetcaster/app Jetcaster/app Jetsnack/app Jetsnack/app Jetcaster/app--Jetsnack/app 136 Jetchat/buildSrc Jetchat/buildSrc Jetsurvey/buildSrc Jetsurvey/buildSrc Jetchat/buildSrc--Jetsurvey/buildSrc 66

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 98 duplicates...
Size#FoldersFilesLinesCode
42 x 2 Jetcaster/app/src/main/j...mple/jetcaster/ui/theme
Jetsnack/app/src/main/ja...ample/jetsnack/ui/theme
Type.kt
Type.kt
35:76 (43%)
40:81 (42%)
view
30 x 2 Jetsurvey/app/src/main/j...ompose/jetsurvey/survey
Jetsurvey/app/src/main/j...ompose/jetsurvey/survey
SurveyQuestions.kt
SurveyQuestions.kt
330:363 (6%)
405:437 (6%)
view
17 x 2 Jetsnack/app/src/main/ja...e/jetsnack/ui/home/cart
Jetsnack/app/src/main/ja...jetsnack/ui/home/search
Cart.kt
Results.kt
340:358 (4%)
144:162 (11%)
view
15 x 2 Jetsurvey/app/src/main/j...ompose/jetsurvey/survey
Jetsurvey/app/src/main/j...ompose/jetsurvey/survey
SurveyQuestions.kt
SurveyQuestions.kt
478:495 (3%)
543:560 (3%)
view
14 x 2 JetNews/app/src/main/jav...example/jetnews/ui/home
JetNews/app/src/main/jav...example/jetnews/ui/home
HomeScreens.kt
HomeScreens.kt
766:779 (2%)
798:811 (2%)
view
13 x 2 JetNews/app/src/main/jav...example/jetnews/ui/home
JetNews/app/src/main/jav...example/jetnews/ui/home
HomeScreens.kt
HomeScreens.kt
725:738 (2%)
761:774 (2%)
view
13 x 2 Jetchat/buildSrc/src/mai...ompose/jetchat/buildsrc
Jetsurvey/buildSrc/src/m...pose/jetsurvey/buildsrc
dependencies.kt
dependencies.kt
36:52 (18%)
36:52 (20%)
view
13 x 2 Jetchat/buildSrc/src/mai...ompose/jetchat/buildsrc
Owl/buildSrc/src/main/ja...om/example/owl/buildsrc
dependencies.kt
Dependencies.kt
31:47 (18%)
26:42 (24%)
view
13 x 2 Jetsnack/app/src/main/ja...xample/jetsnack/ui/home
Jetsnack/app/src/main/ja...jetsnack/ui/home/search
Profile.kt
Results.kt
43:55 (37%)
194:206 (8%)
view
11 x 2 Jetsnack/buildSrc/src/ma...ample/jetsnack/buildsrc
Jetsurvey/buildSrc/src/m...pose/jetsurvey/buildsrc
Dependencies.kt
dependencies.kt
33:47 (18%)
36:50 (17%)
view
11 x 2 Jetchat/buildSrc/src/mai...ompose/jetchat/buildsrc
Jetsnack/buildSrc/src/ma...ample/jetsnack/buildsrc
dependencies.kt
Dependencies.kt
36:50 (15%)
33:47 (18%)
view
11 x 2 Jetcaster/app/src/main/j...mple/jetcaster/ui/theme
Jetsnack/app/src/main/ja...ample/jetsnack/ui/theme
Type.kt
Type.kt
98:108 (11%)
103:113 (11%)
view
11 x 2 Jetsurvey/app/src/main/j...ompose/jetsurvey/survey
Jetsurvey/app/src/main/j...ompose/jetsurvey/survey
SurveyQuestions.kt
SurveyQuestions.kt
364:381 (2%)
450:466 (2%)
view
10 x 2 Crane/buildSrc/src/main/.../example/crane/buildsrc
Owl/buildSrc/src/main/ja...om/example/owl/buildsrc
Dependencies.kt
Dependencies.kt
36:48 (14%)
26:39 (18%)
view
10 x 2 JetNews/app/src/main/jav...mple/jetnews/ui/article
JetNews/app/src/main/jav...example/jetnews/ui/home
PostContent.kt
PostCardTop.kt
134:143 (4%)
55:64 (16%)
view
10 x 2 Jetsnack/app/src/main/ja...e/jetsnack/ui/home/cart
Jetsnack/app/src/main/ja...jetsnack/ui/home/search
Cart.kt
Results.kt
299:309 (2%)
118:128 (6%)
view
10 x 2 Jetcaster/buildSrc/src/m...mple/jetcaster/buildsrc
Jetsurvey/buildSrc/src/m...pose/jetsurvey/buildsrc
dependencies.kt
dependencies.kt
33:44 (13%)
36:47 (16%)
view
10 x 2 Jetcaster/buildSrc/src/m...mple/jetcaster/buildsrc
Owl/buildSrc/src/main/ja...om/example/owl/buildsrc
dependencies.kt
Dependencies.kt
33:44 (13%)
31:42 (18%)
view
10 x 2 Jetsurvey/buildSrc/src/m...pose/jetsurvey/buildsrc
Owl/buildSrc/src/main/ja...om/example/owl/buildsrc
dependencies.kt
Dependencies.kt
36:47 (16%)
31:42 (18%)
view
10 x 2 Crane/buildSrc/src/main/.../example/crane/buildsrc
Jetchat/buildSrc/src/mai...ompose/jetchat/buildsrc
Dependencies.kt
dependencies.kt
36:48 (14%)
31:44 (14%)
view
Duplicated Units
The list of top 2 duplicated units.
See data for all 2 unit duplicates...
Size#FoldersFilesLinesCode
9 x 2 JetNews/app/src/main/jav...jetnews/data/posts/impl
JetNews/app/src/main/jav...jetnews/data/posts/impl
BlockingFakePostsRepository.kt
FakePostsRepository.kt
40:49 
46:55 
view
6 x 2 Jetchat/app/src/main/jav...compose/jetchat/profile
Jetchat/app/src/main/jav...compose/jetchat/profile
Profile.kt
Profile.kt
296:302 
306:312 
view