aws / amazon-chime-sdk-js
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 497 files with 35,136 lines of code.
    • 3 very long files (8,557 lines of code)
    • 5 long files (3,285 lines of code)
    • 23 medium size files (7,513 lines of codeclsfd_ftr_w_mp_ins)
    • 36 small files (5,234 lines of code)
    • 430 very small files (10,547 lines of code)
24% | 9% | 21% | 14% | 30%
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
js41% | 4% | 8% | 10% | 34%
ts13% | 12% | 28% | 17% | 27%
proto0% | 0% | 98% | 0% | 1%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
src/signalingprotocol100% | 0% | 0% | 0% | 0%
src/devicecontroller88% | 0% | 0% | 0% | 12%
src/audiovideocontroller88% | 0% | 0% | 0% | 11%
src/videodownlinkbandwidthpolicy0% | 69% | 0% | 14% | 16%
integration/js0% | 10% | 13% | 10% | 65%
src0% | 100% | 0% | 0% | 0%
src/clientmetricreport0% | 94% | 0% | 0% | 5%
src/sdp0% | 95% | 0% | 0% | 4%
src/task0% | 0% | 25% | 26% | 47%
src/realtimecontroller0% | 0% | 72% | 0% | 27%
src/meetingreadinesschecker0% | 0% | 82% | 0% | 17%
src/eventbuffer0% | 0% | 95% | 0% | 4%
src/statscollector0% | 0% | 91% | 0% | 8%
src/videostreamindex0% | 0% | 62% | 23% | 13%
src/audiovideofacade0% | 0% | 96% | 0% | 3%
src/signalingclient0% | 0% | 77% | 0% | 22%
src/videouplinkbandwidthpolicy0% | 0% | 60% | 29% | 10%
protocol0% | 0% | 98% | 0% | 1%
src/backgroundfilter0% | 0% | 56% | 20% | 23%
libs/voicefocus0% | 0% | 30% | 50% | 19%
src/videotile0% | 0% | 80% | 0% | 19%
src/transceivercontroller0% | 0% | 79% | 0% | 20%
src/browserbehavior0% | 0% | 88% | 0% | 11%
src/voicefocus0% | 0% | 45% | 39% | 15%
src/videotilecontroller0% | 0% | 82% | 0% | 17%
src/videoframeprocessor0% | 0% | 51% | 32% | 16%
src/volumeindicatoradapter0% | 0% | 96% | 0% | 4%
src/meetingsession0% | 0% | 0% | 65% | 34%
script0% | 0% | 0% | 44% | 55%
src/messagingsession0% | 0% | 0% | 86% | 13%
src/contentsharecontroller0% | 0% | 0% | 58% | 41%
src/activespeakerdetector0% | 0% | 0% | 89% | 10%
src/sessionstatecontroller0% | 0% | 0% | 78% | 21%
src/pingpong0% | 0% | 0% | 94% | 5%
src/logger0% | 0% | 0% | 43% | 56%
src/audiomixcontroller0% | 0% | 0% | 86% | 13%
src/sigv40% | 0% | 0% | 91% | 8%
src/transcript0% | 0% | 0% | 54% | 45%
src/mediadevicefactory0% | 0% | 0% | 86% | 13%
src/eventcontroller0% | 0% | 0% | 55% | 44%
src/connectionmonitor0% | 0% | 0% | 96% | 3%
src/backgroundreplacementprocessor0% | 0% | 0% | 50% | 49%
src/backgroundblurprocessor0% | 0% | 0% | 0% | 100%
src/connectionhealthpolicy0% | 0% | 0% | 0% | 100%
src/eventreporter0% | 0% | 0% | 0% | 100%
src/reconnectcontroller0% | 0% | 0% | 0% | 100%
src/utils0% | 0% | 0% | 0% | 100%
src/backoff0% | 0% | 0% | 0% | 100%
src/websocketadapter0% | 0% | 0% | 0% | 100%
src/videocaptureandencodeparameter0% | 0% | 0% | 0% | 100%
src/videostreamidset0% | 0% | 0% | 0% | 100%
src/devicepixelratiomonitor0% | 0% | 0% | 0% | 100%
src/cspmonitor0% | 0% | 0% | 0% | 100%
src/scheduler0% | 0% | 0% | 0% | 100%
src/modality0% | 0% | 0% | 0% | 100%
src/eventsclientconfiguration0% | 0% | 0% | 0% | 100%
src/useragentparser0% | 0% | 0% | 0% | 100%
src/activespeakerpolicy0% | 0% | 0% | 0% | 100%
src/versioning0% | 0% | 0% | 0% | 100%
src/audiovideoobserver0% | 0% | 0% | 0% | 100%
src/videoelementfactory0% | 0% | 0% | 0% | 100%
src/mediastreambroker0% | 0% | 0% | 0% | 100%
src/datamessage0% | 0% | 0% | 0% | 100%
src/videotilefactory0% | 0% | 0% | 0% | 100%
src/applicationmetadata0% | 0% | 0% | 0% | 100%
src/eventbufferconfiguration0% | 0% | 0% | 0% | 100%
src/audioprofile0% | 0% | 0% | 0% | 100%
src/eventingestionconfiguration0% | 0% | 0% | 0% | 100%
src/modelspec0% | 0% | 0% | 0% | 100%
src/devicepixelratiosource0% | 0% | 0% | 0% | 100%
src/simulcastlayers0% | 0% | 0% | 0% | 100%
src/devicechangeobserver0% | 0% | 0% | 0% | 100%
src/messagingsessionobserver0% | 0% | 0% | 0% | 100%
src/message0% | 0% | 0% | 0% | 100%
src/destroyable0% | 0% | 0% | 0% | 100%
src/contentshareobserver0% | 0% | 0% | 0% | 100%
src/attendee0% | 0% | 0% | 0% | 100%
src/pingpongobserver0% | 0% | 0% | 0% | 100%
src/signalingclientobserver0% | 0% | 0% | 0% | 100%
src/audiomixobserver0% | 0% | 0% | 0% | 100%
src/videosource0% | 0% | 0% | 0% | 100%
src/taskcanceler0% | 0% | 0% | 0% | 100%
src/removableobserver0% | 0% | 0% | 0% | 100%
src/devicepixelratioobserver0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
SignalingProtocol.js
in src/signalingprotocol
5688 39
DefaultDeviceController.ts
in src/devicecontroller
1672 69
DefaultAudioVideoController.ts
in src/audiovideocontroller
1197 31
VideoPriorityBasedPolicy.ts
in src/videodownlinkbandwidthpolicy
866 19
AppPage.js
in integration/js/pages
682 72
index.ts
in src
639 -
DefaultClientMetricReport.ts
in src/clientmetricreport
589 -
DefaultSDP.ts
in src/sdp
509 13
DefaultRealtimeController.ts
in src/realtimecontroller
472 9
DefaultMeetingReadinessChecker.ts
in src/meetingreadinesschecker
455 18
InMemoryJSONEventBuffer.ts
in src/eventbuffer
432 15
DefaultStatsCollector.ts
in src/statscollector
425 16
DefaultVideoStreamIndex.ts
in src/videostreamindex
422 7
DefaultAudioVideoFacade.ts
in src/audiovideofacade
414 5
MonitorTask.ts
in src/task
387 3
DefaultSignalingClient.ts
in src/signalingclient
383 13
DefaultSimulcastUplinkPolicy.ts
in src/videouplinkbandwidthpolicy
364 10
proto
SignalingProtocol.proto
in protocol
331 -
BackgroundFilterProcessor.ts
in src/backgroundfilter
322 9
voicefocus.js
in libs/voicefocus
312 8
SdkBaseTest.js
in integration/js/utils
300 15
DefaultVideoTile.ts
in src/videotile
289 7
DefaultTransceiverController.ts
in src/transceivercontroller
285 11
WebdriverSauceLabs.js
in integration/js/utils
278 13
TestAppPage.js
in integration/js/pages
271 33
DefaultBrowserBehavior.ts
in src/browserbehavior
262 12
CreatePeerConnectionTask.ts
in src/task
233 6
VoiceFocusTransformDevice.ts
in src/voicefocus
224 14
DefaultVideoTileController.ts
in src/videotilecontroller
219 3
DefaultVideoFrameProcessorPipeline.ts
in src/videoframeprocessor
217 8
DefaultVolumeIndicatorAdapter.ts
in src/volumeindicatoradapter
216 5
DefaultMeetingSession.ts
in src/meetingsession
200 10
VoiceFocusDeviceTransformer.ts
in src/voicefocus
197 14
server.js
in integration/js
194 3
DefaultMessagingSession.ts
in src/messagingsession
189 8
check-code-style.js
in script
188 -
ReceiveVideoStreamIndexTask.ts
in src/task
187 7
MeetingReadinessCheckerPage.js
in integration/js/pages
186 18
MeetingSessionStatus.ts
in src/meetingsession
182 3
VideoPreferences.ts
in src/videodownlinkbandwidthpolicy
181 4
NScaleVideoUplinkBandwidthPolicy.ts
in src/videouplinkbandwidthpolicy
177 5
DefaultContentShareController.ts
in src/contentsharecontroller
170 5
DefaultActiveSpeakerDetector.ts
in src/activespeakerdetector
169 5
DefaultSessionStateController.ts
in src/sessionstatecontroller
163 5
SimulcastVideoStreamIndex.ts
in src/videostreamindex
161 2
WebdriverBrowserStack.js
in integration/js/utils
152 13
FinishGatheringICECandidatesTask.ts
in src/task
137 2
decider.js
in libs/voicefocus
136 5
DefaultVideoTransformDevice.ts
in src/videoframeprocessor
136 5
support.js
in libs/voicefocus
134 -
Files With Most Units (Top 20)
File# lines# units
AppPage.js
in integration/js/pages
682 72
DefaultDeviceController.ts
in src/devicecontroller
1672 69
SignalingProtocol.js
in src/signalingprotocol
5688 39
TestAppPage.js
in integration/js/pages
271 33
DefaultAudioVideoController.ts
in src/audiovideocontroller
1197 31
VideoPriorityBasedPolicy.ts
in src/videodownlinkbandwidthpolicy
866 19
DefaultMeetingReadinessChecker.ts
in src/meetingreadinesschecker
455 18
MeetingReadinessCheckerPage.js
in integration/js/pages
186 18
DefaultStatsCollector.ts
in src/statscollector
425 16
InMemoryJSONEventBuffer.ts
in src/eventbuffer
432 15
SdkBaseTest.js
in integration/js/utils
300 15
VoiceFocusDeviceTransformer.ts
in src/voicefocus
197 14
VoiceFocusTransformDevice.ts
in src/voicefocus
224 14
MeetingSessionURLs.ts
in src/meetingsession
54 14
DefaultSDP.ts
in src/sdp
509 13
DefaultSignalingClient.ts
in src/signalingclient
383 13
WebdriverSauceLabs.js
in integration/js/utils
278 13
WebdriverBrowserStack.js
in integration/js/utils
152 13
DefaultBrowserBehavior.ts
in src/browserbehavior
262 12
DefaultTransceiverController.ts
in src/transceivercontroller
285 11
Files With Long Lines (Top 20)

There are 79 files with lines longer than 120 characters. In total, there are 279 long lines.

File# lines# units# long lines
SignalingProtocol.js
in src/signalingprotocol
5688 39 52
ContentShareOnlyAllowTwoTest.js
in integration/js
67 2 18
voicefocus.js
in libs/voicefocus
312 8 12
InMemoryJSONEventBuffer.ts
in src/eventbuffer
432 15 12
TranscriptionTest.js
in integration/js
84 3 12
ContentShareScreenCapture.js
in integration/js
58 2 12
index.ts
in src
639 - 9
ContentShareVideoTest.js
in integration/js
50 2 9
AudioTest.js
in integration/js
67 5 8
MediaCaptureTest.js
in integration/js
72 3 6
MeetingReadinessCheckerPage.js
in integration/js/pages
186 18 6
DefaultDeviceController.ts
in src/devicecontroller
1672 69 5
VideoTest.js
in integration/js
83 5 5
MonitorTask.ts
in src/task
387 3 4
DefaultAudioVideoController.ts
in src/audiovideocontroller
1197 31 4
release.js
in script
80 - 4
ContentShareJoinLaterTest.js
in integration/js
38 2 4
SipCallTest.js
in integration/js
40 2 4
MeetingLeaveContentShareTest.js
in integration/js
39 2 4
AppQuitContentShareTest.js
in integration/js
38 2 4