aws-samples / iot-reference-architectures
File Size

The distribution of size of files (measured in lines of code).

Intro
  • File size measurements show the distribution of size of files.
  • Files are classified in four categories based on their size (lines of code): 1-100 (very small files), 101-200 (small files), 201-500 (medium size files), 501-1000 (long files), 1001+(very long files).
  • It is a good practice to keep files small. Long files may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
File Size Overall
  • There are 127 files with 6,325 lines of code.
    • 0 very long files (0 lines of code)
    • 0 long files (0 lines of code)
    • 5 medium size files (1,405 lines of codeclsfd_ftr_w_mp_ins)
    • 12 small files (1,747 lines of code)
    • 110 very small files (3,173 lines of code)
0% | 0% | 22% | 27% | 50%
Legend:
1001+
501-1000
201-500
101-200
1-100


explore: zoomable circles | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
java0% | 0% | 21% | 34% | 44%
py0% | 0% | 31% | 15% | 52%
kts0% | 0% | 43% | 0% | 56%
cs0% | 0% | 0% | 100% | 0%
yaml0% | 0% | 0% | 26% | 73%
js0% | 0% | 0% | 0% | 100%
css0% | 0% | 0% | 0% | 100%
html0% | 0% | 0% | 0% | 100%
go0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
serverless-ui0% | 0% | 27% | 29% | 43%
dynamodb-api0% | 0% | 29% | 33% | 37%
greengrass-v20% | 0% | 51% | 0% | 48%
cross-account-publish0% | 0% | 0% | 40% | 59%
cross-account-register-ztp0% | 0% | 0% | 100% | 0%
cloudwatch-events0% | 0% | 0% | 0% | 100%
cbor-stack0% | 0% | 0% | 0% | 100%
amazon-ion-stack0% | 0% | 0% | 0% | 100%
partner-attribution0% | 0% | 0% | 0% | 100%
tools0% | 0% | 0% | 0% | 100%
mqtt-over-websockets-jitpack0% | 0% | 0% | 0% | 100%
results-iterator-jitpack0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
SqsToIotCoreStack.java
in dynamodb-api/src/main/java/com/awssamples/dynamodbapi
400 34
GGUtils.py
in greengrass-v2/poll-api/artifacts/com.greengrass.GGUtils/1.0.0
326 39
build.gradle.kts
in serverless-ui/jwt-stack
247 -
BasicTlsHelper.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/server
223 29
Authorizer.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/server
209 20
HandleIotEvent.java
in dynamodb-api/src/main/java/com/awssamples/iot/dynamodb/api/handlers/interfaces
193 27
BasicJwtService.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/server
172 10
CertificateBasedStack.java
in cross-account-publish/certificate-based-stack/src/main/java/com/awssamples/crossaccountpublish
171 7
ShellPresenter.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/client/shell
160 12
lambda_function.py
in cross-account-register-ztp/python/lambda
156 5
SharedHelper.java
in dynamodb-api/src/main/java/com/awssamples/iot/dynamodb/api
151 16
CreateView.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/client/create
139 15
AttributionView.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/client/attribution
139 13
Program.cs
in cross-account-publish/c-sharp/ConsoleApp1/ConsoleApp1
130 2
CreatePresenter.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/client/create
116 10
CloudFormation-Customer-Account.yaml
in cross-account-register-ztp/python
111 -
HandleSqsEvent.java
in dynamodb-api/src/main/java/com/awssamples/iot/dynamodb/api/handlers
109 7
partner-account.yaml
in cloudwatch-events/python
78 -
AmazonIonStack.java
in amazon-ion-stack/src/main/java/com/awssamples/amazonion
78 6
publish.js
in cross-account-publish/certificate-based-stack/nodejs
77 1
JwtStack.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/serverlessui
77 6
build.gradle.kts
in cross-account-publish/certificate-based-stack
74 -
customer-account.yaml
in cloudwatch-events/python
74 -
AppModule.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/client
71 7
process.py
in greengrass-v2/poll-api/artifacts/com.greengrass.ProcessApiStream/1.0.0
70 4
HandleIotSendEvent.java
in dynamodb-api/src/main/java/com/awssamples/iot/dynamodb/api/handlers
69 6
CborStack.java
in cbor-stack/src/main/java/com/awssamples/cbor
68 6
partner-account.yaml
in cross-account-publish/python
63 -
HandleIotNextEvent.java
in dynamodb-api/src/main/java/com/awssamples/iot/dynamodb/api/handlers
59 5
CertificateSigner.java
in cross-account-publish/certificate-based-stack/src/main/java/com/awssamples/iot/crossaccountpublish/certificatebased
57 5
build.gradle.kts
in cbor-stack
57 -
build.gradle.kts
in dynamodb-api
56 -
build.gradle.kts
in amazon-ion-stack
56 -
HandleIotQueryEvent.java
in dynamodb-api/src/main/java/com/awssamples/iot/dynamodb/api/handlers
54 5
HandleIotGetEvent.java
in dynamodb-api/src/main/java/com/awssamples/iot/dynamodb/api/handlers
54 5
GwtHelpers.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/client
52 6
splash.css
in serverless-ui/jwt-stack/src/main/webapp/splash
51 -
HandleIotNotificationEvent.java
in dynamodb-api/src/main/java/com/awssamples/iot/dynamodb/api/handlers
50 1
index.html
in serverless-ui/jwt-stack/src/main/webapp
47 -
export.py
in greengrass-v2/poll-api/artifacts/com.greengrass.ExportStreamToS3/1.0.0
45 2
app.py
in greengrass-v2/poll-api/artifacts/com.greengrass.FakeApi/1.0.0
45 4
HandleIotDeleteEvent.java
in dynamodb-api/src/main/java/com/awssamples/iot/dynamodb/api/handlers
45 5
StaticFileServlet.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/server
44 5
filter.py
in greengrass-v2/poll-api/artifacts/com.greengrass.FilterApiStream/1.0.0
40 3
sub.py
in tools/simple-pub-sub
39 2
build.gradle.kts
in mqtt-over-websockets-jitpack
39 -
ShellView.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/client/shell
39 4
cleanup.py
in greengrass-v2/poll-api/artifacts/com.greengrass.CleanUpExportFiles/1.0.0
38 2
publish.py
in cross-account-publish/certificate-based-stack/python
38 1
customer-triggered-on-create-thing.py
in cloudwatch-events/python
38 1
Files With Most Units (Top 20)
File# lines# units
GGUtils.py
in greengrass-v2/poll-api/artifacts/com.greengrass.GGUtils/1.0.0
326 39
SqsToIotCoreStack.java
in dynamodb-api/src/main/java/com/awssamples/dynamodbapi
400 34
BasicTlsHelper.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/server
223 29
HandleIotEvent.java
in dynamodb-api/src/main/java/com/awssamples/iot/dynamodb/api/handlers/interfaces
193 27
Authorizer.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/server
209 20
SharedHelper.java
in dynamodb-api/src/main/java/com/awssamples/iot/dynamodb/api
151 16
CreateView.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/client/create
139 15
AttributionView.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/client/attribution
139 13
ShellPresenter.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/client/shell
160 12
CreatePresenter.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/client/create
116 10
BasicJwtService.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/server
172 10
CertificateBasedStack.java
in cross-account-publish/certificate-based-stack/src/main/java/com/awssamples/crossaccountpublish
171 7
HandleSqsEvent.java
in dynamodb-api/src/main/java/com/awssamples/iot/dynamodb/api/handlers
109 7
AppModule.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/client
71 7
HandleIotSendEvent.java
in dynamodb-api/src/main/java/com/awssamples/iot/dynamodb/api/handlers
69 6
CborStack.java
in cbor-stack/src/main/java/com/awssamples/cbor
68 6
AmazonIonStack.java
in amazon-ion-stack/src/main/java/com/awssamples/amazonion
78 6
JwtStack.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/serverlessui
77 6
GwtHelpers.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/client
52 6
CertificateSigner.java
in cross-account-publish/certificate-based-stack/src/main/java/com/awssamples/iot/crossaccountpublish/certificatebased
57 5
Files With Long Lines (Top 20)

There are 42 files with lines longer than 120 characters. In total, there are 199 long lines.

File# lines# units# long lines
SqsToIotCoreStack.java
in dynamodb-api/src/main/java/com/awssamples/dynamodbapi
400 34 57
BasicTlsHelper.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/server
223 29 15
HandleIotEvent.java
in dynamodb-api/src/main/java/com/awssamples/iot/dynamodb/api/handlers/interfaces
193 27 14
CertificateBasedStack.java
in cross-account-publish/certificate-based-stack/src/main/java/com/awssamples/crossaccountpublish
171 7 13
SharedHelper.java
in dynamodb-api/src/main/java/com/awssamples/iot/dynamodb/api
151 16 10
CborStack.java
in cbor-stack/src/main/java/com/awssamples/cbor
68 6 8
BasicJwtService.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/server
172 10 8
AmazonIonStack.java
in amazon-ion-stack/src/main/java/com/awssamples/amazonion
78 6 7
TlsHelper.java
in serverless-ui/jwt-stack/src/main/java/com/awssamples/server
31 - 7
HandleIotNotificationEvent.java
in dynamodb-api/src/main/java/com/awssamples/iot/dynamodb/api/handlers
50 1 5
Program.cs
in cross-account-publish/c-sharp/ConsoleApp1/ConsoleApp1
130 2 4
HandleIotEvent.java
in cbor-stack/src/main/java/com/awssamples/iot/cbor/handler/handlers/interfaces
35 4 4
GGUtils.py
in greengrass-v2/poll-api/artifacts/com.greengrass.GGUtils/1.0.0
326 39 3
partner-account.yaml
in cross-account-publish/python
63 - 3
partner-account.yaml
in cloudwatch-events/python
78 - 3
CloudFormation-Customer-Account.yaml
in cross-account-register-ztp/python
111 - 3
build.gradle.kts
in serverless-ui/jwt-stack
247 - 3
publish.py
in cross-account-publish/certificate-based-stack/python
38 1 2
customer-account.yaml
in cross-account-publish/python
27 - 2
HandleSqsEvent.java
in dynamodb-api/src/main/java/com/awssamples/iot/dynamodb/api/handlers
109 7 2