firebase / FirebaseUI-iOS
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
  • 21% duplication:
    • 11,354 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 2,397 duplicated lines
  • 308 duplicates
system21% (2,397 lines)
Duplication per Extension
m22% (2,183 lines)
h7% (116 lines)
swift42% (98 lines)
Duplication per Component (primary)
FirebaseEmailAuthUI34% (626 lines)
FirebaseDatabaseUI20% (468 lines)
FirebaseAuthUI10% (299 lines)
FirebaseFirestoreUI21% (233 lines)
FirebaseGoogleAuthUI45% (201 lines)
FirebaseFacebookAuthUI36% (169 lines)
FirebasePhoneAuthUI7% (102 lines)
ROOT41% (98 lines)
FirebaseStorageUI24% (94 lines)
FirebaseOAuthUI22% (77 lines)
FirebaseAnonymousAuthUI26% (30 lines)

Duplication Between Components (50+ lines)

G FirebaseEmailAuthUI FirebaseEmailAuthUI FirebasePhoneAuthUI FirebasePhoneAuthUI FirebaseEmailAuthUI--FirebasePhoneAuthUI 186 FirebaseFacebookAuthUI FirebaseFacebookAuthUI FirebaseGoogleAuthUI FirebaseGoogleAuthUI FirebaseFacebookAuthUI--FirebaseGoogleAuthUI 130 FirebaseOAuthUI FirebaseOAuthUI FirebaseFacebookAuthUI--FirebaseOAuthUI 80 FirebaseGoogleAuthUI--FirebaseOAuthUI 56 FirebaseAuthUI FirebaseAuthUI FirebaseAuthUI--FirebaseEmailAuthUI 60 FirebaseAnonymousAuthUI FirebaseAnonymousAuthUI FirebaseAnonymousAuthUI--FirebasePhoneAuthUI 56

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 308 duplicates...
Size#FoldersFilesLinesCode
42 x 2 FirebaseFacebookAuthUI/FirebaseFacebookAuthUITests
FirebaseFacebookAuthUI/FirebaseFacebookAuthUITests
FirebaseFacebookAuthUITests.m
FirebaseFacebookAuthUITests.m
90:138 (20%)
146:194 (20%)
view
38 x 2 FirebaseGoogleAuthUI/FirebaseGoogleAuthUITests
FirebaseGoogleAuthUI/FirebaseGoogleAuthUITests
FirebaseGoogleAuthUITests.m
FirebaseGoogleAuthUITests.m
101:152 (15%)
171:222 (15%)
view
27 x 2 FirebaseAuthUI/Sources
FirebaseAuthUI/Sources
FUIAccountSettingsViewController.m
FUIAccountSettingsViewController.m
225:254 (8%)
262:291 (8%)
view
27 x 2 FirebaseEmailAuthUI/Sources
FirebaseEmailAuthUI/Sources
FUIEmailAuth.m
FUIEmailAuth.m
312:344 (4%)
417:449 (4%)
view
26 x 2 FirebaseAuthUI/Sources
FirebaseAuthUI/Sources
FUIAccountSettingsViewController.m
FUIAccountSettingsViewController.m
194:219 (8%)
327:352 (8%)
view
23 x 2 FirebaseEmailAuthUI/Sources
FirebaseEmailAuthUI/Sources
FUIConfirmEmailViewController.m
FUIEmailEntryViewController.m
273:304 (13%)
348:378 (10%)
view
21 x 2 FirebaseDatabaseUI/FirebaseDatabaseUITests
FirebaseDatabaseUI/FirebaseDatabaseUITests
FUIIndexCollectionViewDataSourceTest.m
FUIIndexTableViewDataSourceTest.m
42:64 (18%)
42:64 (18%)
view
20 x 2 FirebaseFacebookAuthUI/Sources
FirebaseGoogleAuthUI/Sources
FUIFacebookAuth.m
FUIGoogleAuth.m
251:273 (9%)
212:234 (11%)
view
20 x 2 FirebaseDatabaseUI/FirebaseDatabaseUITests
FirebaseDatabaseUI/FirebaseDatabaseUITests
FUIIndexArrayTest.m
FUIIndexTableViewDataSourceTest.m
38:59 (10%)
42:63 (17%)
view
20 x 2 FirebaseDatabaseUI/FirebaseDatabaseUITests
FirebaseDatabaseUI/FirebaseDatabaseUITests
FUIIndexArrayTest.m
FUIIndexCollectionViewDataSourceTest.m
38:59 (10%)
42:63 (17%)
view
20 x 2 FirebaseAuthUI/Sources
FirebaseAuthUI/Sources
FUIAccountSettingsViewController.m
FUIAccountSettingsViewController.m
272:293 (6%)
324:345 (6%)
view
19 x 2 FirebaseFacebookAuthUI/Sources
FirebaseOAuthUI/Sources
FUIFacebookAuth.m
FUIOAuth.m
252:273 (9%)
324:345 (7%)
view
19 x 2 FirebaseAuthUI/Sources
FirebaseAuthUI/Sources
FUIAccountSettingsViewController.m
FUIAccountSettingsViewController.m
194:212 (6%)
275:293 (6%)
view
19 x 2 FirebaseGoogleAuthUI/Sources
FirebaseOAuthUI/Sources
FUIGoogleAuth.m
FUIOAuth.m
213:234 (10%)
324:345 (7%)
view
18 x 2 FirebaseAuthUI/Sources
FirebaseAuthUI/Sources
FUIAccountSettingsViewController.m
FUIAccountSettingsViewController.m
235:254 (5%)
324:343 (5%)
view
18 x 2 FirebaseEmailAuthUI/Sources
FirebaseEmailAuthUI/Sources
FUIConfirmEmailViewController.m
FUIEmailEntryViewController.m
108:135 (10%)
109:136 (7%)
view
18 x 2 FirebaseEmailAuthUI/Sources
FirebaseEmailAuthUI/Sources
FUIEmailAuth.m
FUIEmailAuth.m
369:387 (3%)
416:434 (3%)
view
17 x 2 FirebaseEmailAuthUI/Sources
FirebaseEmailAuthUI/Sources
FUIConfirmEmailViewController.m
FUIPasswordSignInViewController.m
151:168 (10%)
155:172 (9%)
view
17 x 2 FirebaseEmailAuthUI/Sources
FirebaseEmailAuthUI/Sources
FUIConfirmEmailViewController.m
FUIPasswordSignInViewController.m
108:127 (10%)
114:133 (9%)
view
17 x 2 FirebaseEmailAuthUI/Sources
FirebaseEmailAuthUI/Sources
FUIEmailEntryViewController.m
FUIPasswordSignInViewController.m
109:128 (7%)
114:133 (9%)
view