aws-solutions / liveness-detection-framework
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
  • 14% duplication:
    • 2,931 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 424 duplicated lines
  • 32 duplicates
system14% (424 lines)
Duplication per Extension
yaml37% (322 lines)
tsx8% (44 lines)
css11% (22 lines)
py3% (20 lines)
ts2% (16 lines)
Duplication per Component (primary)
source/client59% (216 lines)
source/backend21% (95 lines)
source/client/src/liveness/nose9% (49 lines)
source/client/src/liveness/pose12% (33 lines)
source/backend/chalicelib3% (20 lines)
deployment16% (11 lines)
source/client/src0% (0 lines)
source/client/src/liveness0% (0 lines)
source/client/src/liveness/utils0% (0 lines)
source/client/src/liveness/components0% (0 lines)
source/client/public0% (0 lines)

Duplication Between Components (50+ lines)

G source/backend source/backend source/client source/client source/backend--source/client 128 source/client/src/liveness/nose source/client/src/liveness/nose source/client/src/liveness/pose source/client/src/liveness/pose source/client/src/liveness/nose--source/client/src/liveness/pose 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 32 duplicates...
Size#FoldersFilesLinesCode
50 x 2 source/client
source/client
template-one-click.yaml
template.yaml
58:107 (19%)
58:107 (44%)
view
40 x 2 source/client
source/client
template-one-click.yaml
template.yaml
16:55 (15%)
3:42 (35%)
view
25 x 2 source/backend
source/client
resources.yaml
template.yaml
61:85 (6%)
33:57 (22%)
view
11 x 2 deployment
source/backend
liveness-detection-framework.yaml
cognito.yaml
17:27 (16%)
17:27 (18%)
view
11 x 2 source/client/src/liveness/nose
source/client/src/liveness/pose
NoseChallenge.css
PoseChallenge.css
14:26 (35%)
18:30 (30%)
view
10 x 2 source/client
source/client
template-one-click.yaml
template.yaml
18:27 (3%)
23:32 (8%)
view
10 x 2 source/backend/chalicelib
source/backend/chalicelib
nose.py
nose.py
70:79 (5%)
107:116 (5%)
view
10 x 2 source/client
source/client
template.yaml
template.yaml
5:14 (8%)
23:32 (8%)
view
10 x 2 source/client
source/client
template-one-click.yaml
template.yaml
36:45 (3%)
5:14 (8%)
view
10 x 2 source/backend
source/backend
resources.yaml
resources.yaml
51:60 (2%)
87:96 (2%)
view
10 x 2 source/client
source/client
template-one-click.yaml
template-one-click.yaml
18:27 (3%)
36:45 (3%)
view
10 x 2 source/backend
source/client
resources.yaml
template-one-click.yaml
61:70 (2%)
46:55 (3%)
view
9 x 2 source/backend
source/client
resources.yaml
template.yaml
97:105 (2%)
34:42 (8%)
view
9 x 2 source/backend
source/client
resources.yaml
template-one-click.yaml
97:105 (2%)
47:55 (3%)
view
9 x 2 source/client/src/liveness/nose
source/client/src/liveness/pose
NoseChallenge.tsx
PoseChallenge.tsx
93:101 (10%)
131:139 (5%)
view
9 x 2 source/backend
source/backend
resources.yaml
resources.yaml
62:70 (2%)
97:105 (2%)
view
8 x 2 source/backend
source/backend
resources.yaml
resources.yaml
273:280 (2%)
286:293 (2%)
view
8 x 2 source/client/src/liveness/nose
source/client/src/liveness/nose
States.ts
States.ts
166:174 (4%)
234:242 (4%)
view
7 x 2 source/client/src/liveness/nose
source/client/src/liveness/pose
NoseChallenge.tsx
PoseChallenge.tsx
119:125 (7%)
192:198 (4%)
view
7 x 2 source/client
source/client
template-one-click.yaml
template-one-click.yaml
222:228 (2%)
236:242 (2%)
view