microsoft / AdaptiveCards
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 1,809 files with 183,585 lines of code.
    • 13 very long files (53,086 lines of code)
    • 33 long files (21,716 lines of code)
    • 106 medium size files (31,906 lines of codeclsfd_ftr_w_mp_ins)
    • 221 small files (30,623 lines of code)
    • 1,436 very small files (46,254 lines of code)
28% | 11% | 17% | 16% | 25%
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
cpp57% | 14% | 6% | 10% | 11%
ts46% | 9% | 18% | 12% | 13%
cs19% | 2% | 20% | 24% | 32%
java7% | 9% | 15% | 23% | 43%
css16% | 23% | 55% | 1% | 2%
h7% | 3% | 6% | 12% | 69%
js10% | 5% | 28% | 26% | 28%
mm0% | 20% | 26% | 30% | 21%
TXT0% | 100% | 0% | 0% | 0%
i0% | 81% | 0% | 18% | 0%
m0% | 58% | 0% | 0% | 41%
vcxproj0% | 0% | 93% | 6% | 0%
ejs0% | 0% | 55% | 17% | 27%
filters0% | 0% | 37% | 58% | 4%
ps10% | 0% | 92% | 0% | 7%
scss0% | 0% | 57% | 23% | 18%
xaml0% | 0% | 0% | 36% | 63%
tsx0% | 0% | 0% | 85% | 14%
yml0% | 0% | 0% | 29% | 70%
html0% | 0% | 0% | 0% | 100%
kt0% | 0% | 0% | 0% | 100%
cmd0% | 0% | 0% | 0% | 100%
g40% | 0% | 0% | 0% | 100%
swift0% | 0% | 0% | 0% | 100%
psm10% | 0% | 0% | 0% | 100%
targets0% | 0% | 0% | 0% | 100%
MD0% | 0% | 0% | 0% | 100%
props0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
source/android/adaptivecards57% | 4% | 6% | 10% | 20%
source/nodejs/adaptivecards70% | 5% | 10% | 7% | 6%
source/shared/cpp21% | 24% | 15% | 19% | 19%
source/dotnet/Library25% | 3% | 18% | 19% | 33%
source/nodejs/adaptivecards-designer28% | 11% | 42% | 6% | 9%
source/community/reactnative12% | 0% | 29% | 26% | 31%
source/ios/AdaptiveCards0% | 19% | 20% | 23% | 36%
source/uwp/Renderer0% | 18% | 23% | 22% | 35%
source/nodejs/adaptivecards-site0% | 42% | 20% | 10% | 26%
ROOT0% | 91% | 0% | 0% | 8%
source/android/mobile0% | 33% | 15% | 18% | 32%
source/uwp/AdaptiveCardsObjectModel0% | 10% | 6% | 11% | 71%
source/nodejs/adaptivecards-ui-testapp0% | 65% | 0% | 0% | 34%
source/nodejs/adaptivecards-controls0% | 0% | 51% | 26% | 22%
source/nodejs/ac-typed-schema0% | 0% | 50% | 15% | 34%
source/android/mobilechatapp0% | 0% | 49% | 36% | 13%
source/uwp/Visualizer0% | 0% | 24% | 30% | 45%
source/uwp/UWPTestLibrary0% | 0% | 46% | 30% | 22%
source/uwp/UWPUITests0% | 0% | 51% | 48% | 0%
source/nodejs/marked-schema0% | 0% | 48% | 43% | 7%
scripts0% | 0% | 88% | 0% | 11%
source/nodejs/adaptivecards-templating0% | 0% | 56% | 32% | 10%
source/uwp/ObjectModelProjection0% | 0% | 60% | 39% | <1%
source/uwp/PerfApp0% | 0% | 29% | 29% | 40%
source/uwp/AdaptiveCardTestApp0% | 0% | 0% | 63% | 36%
source/uwp/ObjectModelTest0% | 0% | 0% | 81% | 18%
source/nodejs/adaptivecards-aaf-testapp0% | 0% | 0% | 58% | 41%
source/nodejs/spec-generator0% | 0% | 0% | 84% | 15%
source/ios/tools0% | 0% | 0% | 100% | 0%
source/nodejs/adaptivecards-react0% | 0% | 0% | 87% | 12%
source/nodejs/adaptivecards-designer-app0% | 0% | 0% | 50% | 50%
source/nodejs/adaptivecards-react-testapp0% | 0% | 0% | 58% | 41%
source/uwp/UWPUITestApp0% | 0% | 0% | 0% | 100%
source/android/uitestapp0% | 0% | 0% | 0% | 100%
source/nodejs/adaptivecards-extras0% | 0% | 0% | 0% | 100%
source/dotnet/Build0% | 0% | 0% | 0% | 100%
source/uwp/UWPObjectModelTest0% | 0% | 0% | 0% | 100%
source/uwp/Build0% | 0% | 0% | 0% | 100%
source/uwp/NuGet0% | 0% | 0% | 0% | 100%
source/dotnet0% | 0% | 0% | 0% | 100%
source/nodejs/adaptivecards-extras-designer0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
objectmodel_wrap.cpp
in source/android/adaptivecards/src/main/cpp
28561 1887
card-elements.ts
in source/nodejs/adaptivecards/src
6256 343
jsoncpp.cpp
in source/shared/cpp/ObjectModel
4459 237
designer-peers.ts
in source/nodejs/adaptivecards-designer/src
2535 158
AdaptiveCardObjectModelJNI.java
in source/android/adaptivecards/src/main/java/io/adaptivecards/objectmodel
1846 29
adaptivecards-designer.css
in source/nodejs/adaptivecards-designer/src
1343 -
EmojiConverter.cs
in source/dotnet/Library/AdaptiveCards/MarkedNet
1326 2
Emoji.cs
in source/dotnet/Library/AdaptiveCards/MarkedNet
1292 -
EmojiMarkup.cs
in source/dotnet/Library/AdaptiveCards/MarkedNet
1290 -
json.h
in source/shared/cpp/ObjectModel/json
1061 9
host-config.ts
in source/nodejs/adaptivecards/src
1060 48
serialization.ts
in source/nodejs/adaptivecards/src
1048 40
host-config.js
in source/community/reactnative/src/utils
1009 39
TXT
THIRD-PARTY-NOTICES.TXT
in root
976 -
adaptive-card-schema.ts
in source/nodejs/adaptivecards-designer/src
903 -
UtiliOS.mm
in source/ios/AdaptiveCards/AdaptiveCards/AdaptiveCards
902 33
i
AdaptiveCardObjectModel.i
in source/android/adaptivecards/src
876 -
ContainerStyleTest.cpp
in source/shared/cpp/AdaptiveCardsSharedModel/AdaptiveCardsSharedModelUnitTest
865 -
extracted.css
in source/nodejs/adaptivecards-site/themes/adaptivecards/source/css
767 -
MainActivityAdaptiveCardsSample.java
in source/android/mobile/src/main/java/io/adaptivecards/adaptivecardssample
766 42
FallbackTests.cpp
in source/shared/cpp/AdaptiveCardsSharedModel/AdaptiveCardsSharedModelUnitTest
740 -
ActionHelpers.cpp
in source/uwp/Renderer/lib
738 19
ACRView.mm
in source/ios/AdaptiveCards/AdaptiveCards/AdaptiveCards
729 -
HostConfig.cpp
in source/shared/cpp/ObjectModel
718 87
card-designer-surface.ts
in source/nodejs/adaptivecards-designer/src
711 37
ObjectModelTest.cpp
in source/shared/cpp/AdaptiveCardsSharedModel/AdaptiveCardsSharedModelUnitTest
664 1
adaptive-applet.ts
in source/nodejs/adaptivecards/src
657 20
ADCIOSVisualizerTests.mm
in source/ios/AdaptiveCards/ADCIOSVisualizer/ADCIOSVisualizerTests
656 -
FullscreenVideoView.java
in source/android/adaptivecards/src/main/java/io/adaptivecards/renderer/layout
639 57
XamlHelpers.cpp
in source/uwp/Renderer/lib
635 25
MarkDownUnitTest.cpp
in source/shared/cpp/AdaptiveCardsSharedModel/AdaptiveCardsSharedModelUnitTest
628 -
ACRContentStackView.mm
in source/ios/AdaptiveCards/AdaptiveCards/AdaptiveCards
601 -
style.css
in source/nodejs/adaptivecards-site/themes/adaptivecards/source/css
582 -
ViewController.m
in source/ios/AdaptiveCards/ADCIOSVisualizer/ADCIOSVisualizer
573 -
ExplicitDimensionTest.cpp
in source/shared/cpp/AdaptiveCardsSharedModel/AdaptiveCardsSharedModelUnitTest
570 3
MarkDownBlockParser.cpp
in source/shared/cpp/ObjectModel
570 33
ChoiceSetInputRenderer.java
in source/android/adaptivecards/src/main/java/io/adaptivecards/renderer/input
549 10
AdaptiveMediaRenderer.cs
in source/dotnet/Library/AdaptiveCards.Rendering.Wpf
548 7
script.js
in source/nodejs/adaptivecards-site/themes/adaptivecards/source/js
538 24
ObjectModelUtil.cpp
in source/uwp/AdaptiveCardsObjectModel/lib
532 25
EverythingBagel.cpp
in source/shared/cpp/AdaptiveCardsSharedModel/AdaptiveCardsSharedModelUnitTest
531 23
Util.cpp
in source/uwp/Renderer/lib
520 30
SharedAdaptiveCard.cpp
in source/shared/cpp/ObjectModel
515 39
adaptivecards-ui-testapp.css
in source/nodejs/adaptivecards-ui-testapp
510 -
Enums.h
in source/shared/cpp/ObjectModel
506 1
CardRendererRegistration.java
in source/android/adaptivecards/src/main/java/io/adaptivecards/renderer/registration
501 30
AdaptiveCardsTemplateVisitor.cs
in source/dotnet/Library/AdaptiveCards.Templating
486 26
ACRChoiceSetCompactStyleView.mm
in source/ios/AdaptiveCards/AdaptiveCards/AdaptiveCards
485 -
filters
AdaptiveCardsSharedModel.vcxproj.filters
in source/shared/cpp/AdaptiveCardsSharedModel/AdaptiveCardsSharedModel
462 -
AdaptiveImageRenderer.cpp
in source/uwp/Renderer/lib
460 8
Files With Most Units (Top 20)
File# lines# units
objectmodel_wrap.cpp
in source/android/adaptivecards/src/main/cpp
28561 1887
card-elements.ts
in source/nodejs/adaptivecards/src
6256 343
jsoncpp.cpp
in source/shared/cpp/ObjectModel
4459 237
designer-peers.ts
in source/nodejs/adaptivecards-designer/src
2535 158
HostConfig.cpp
in source/shared/cpp/ObjectModel
718 87
AdaptiveCardObjectModel.java
in source/android/adaptivecards/src/main/java/io/adaptivecards/objectmodel
258 85
FullscreenVideoView.java
in source/android/adaptivecards/src/main/java/io/adaptivecards/renderer/layout
639 57
HostConfig.java
in source/android/adaptivecards/src/main/java/io/adaptivecards/objectmodel
181 56
AdaptiveCard.java
in source/android/adaptivecards/src/main/java/io/adaptivecards/objectmodel
186 52
host-config.ts
in source/nodejs/adaptivecards/src
1060 48
MainActivityAdaptiveCardsSample.java
in source/android/mobile/src/main/java/io/adaptivecards/adaptivecardssample
766 42
serialization.ts
in source/nodejs/adaptivecards/src
1048 40
host-config.js
in source/community/reactnative/src/utils
1009 39
SharedAdaptiveCard.cpp
in source/shared/cpp/ObjectModel
515 39
card-designer-surface.ts
in source/nodejs/adaptivecards-designer/src
711 37
BaseActionElement.java
in source/android/adaptivecards/src/main/java/io/adaptivecards/objectmodel
134 35
UtiliOS.mm
in source/ios/AdaptiveCards/AdaptiveCards/AdaptiveCards
902 33
MarkDownBlockParser.cpp
in source/shared/cpp/ObjectModel
570 33
toolbar.ts
in source/nodejs/adaptivecards-designer/src
291 31
table.ts
in source/nodejs/adaptivecards/src
456 31
Files With Long Lines (Top 20)

There are 907 files with lines longer than 120 characters. In total, there are 7469 long lines.

File# lines# units# long lines
objectmodel_wrap.cpp
in source/android/adaptivecards/src/main/cpp
28561 1887 3325
AdaptiveCardObjectModelJNI.java
in source/android/adaptivecards/src/main/java/io/adaptivecards/objectmodel
1846 29 445
ejs
header.ejs
in source/nodejs/adaptivecards-site/themes/adaptivecards/layout/_partial
425 - 184
designer-peers.ts
in source/nodejs/adaptivecards-designer/src
2535 158 84
w3.css
in source/nodejs/adaptivecards-site/themes/adaptivecards/source/css
229 - 60
xaml
App.xaml
in source/uwp/AdaptiveCardTestApp
134 - 51
MarkDownUnitTest.cpp
in source/shared/cpp/AdaptiveCardsSharedModel/AdaptiveCardsSharedModelUnitTest
628 - 50
AdaptiveCardObjectModel.java
in source/android/adaptivecards/src/main/java/io/adaptivecards/objectmodel
258 85 45
ACRView.mm
in source/ios/AdaptiveCards/AdaptiveCards/AdaptiveCards
729 - 43
CardRendererRegistration.java
in source/android/adaptivecards/src/main/java/io/adaptivecards/renderer/registration
501 30 40
ADCIOSVisualizerTests.mm
in source/ios/AdaptiveCards/ADCIOSVisualizer/ADCIOSVisualizerTests
656 - 38
card-designer-surface.ts
in source/nodejs/adaptivecards-designer/src
711 37 37
TXT
THIRD-PARTY-NOTICES.TXT
in root
976 - 36
UtiliOS.mm
in source/ios/AdaptiveCards/AdaptiveCards/AdaptiveCards
902 33 34
ACRRegistration.mm
in source/ios/AdaptiveCards/AdaptiveCards/AdaptiveCards
438 - 32
AdaptiveCardsTemplateVisitor.cs
in source/dotnet/Library/AdaptiveCards.Templating
486 26 28
HostConfig.cpp
in source/shared/cpp/ObjectModel
718 87 27
SharedAdaptiveCard.cpp
in source/shared/cpp/ObjectModel
515 39 26
host-config.js
in source/community/reactnative/src/utils
1009 39 25
AdaptiveCard.java
in source/android/adaptivecards/src/main/java/io/adaptivecards/objectmodel
186 52 24