microsoft / featuretimeline
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 254 files with 15,333 lines of code.
    • 1 very long files (1,461 lines of code)
    • 3 long files (1,585 lines of code)
    • 9 medium size files (2,583 lines of codeclsfd_ftr_w_mp_ins)
    • 23 small files (3,356 lines of code)
    • 218 very small files (6,348 lines of code)
9% | 10% | 16% | 21% | 41%
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
ts17% | 0% | 12% | 23% | 47%
tsx0% | 29% | 25% | 19% | 25%
scss0% | 0% | 16% | 28% | 54%
html0% | 0% | 0% | 0% | 100%
js0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
src/PortfolioPlanning/Common54% | 0% | 0% | 33% | 11%
src/PortfolioPlanning/Components0% | 39% | 21% | 11% | 27%
src/FeatureTimeline/react0% | 76% | 0% | 16% | 7%
src/EpicRoadmap/react0% | 0% | 71% | 12% | 15%
src/FeatureTimeline/redux0% | 0% | 28% | 19% | 52%
src/Common/react0% | 0% | 22% | 19% | 58%
src/PortfolioPlanning/Redux0% | 0% | 22% | 53% | 23%
src/EpicRoadmap/redux0% | 0% | 17% | 9% | 72%
src/PortfolioPlanning0% | 0% | 0% | 48% | 51%
src/PortfolioPlanning/Models0% | 0% | 0% | 74% | 25%
src/Common/redux0% | 0% | 0% | 0% | 100%
src/FeatureTimeline0% | 0% | 0% | 0% | 100%
scripts0% | 0% | 0% | 0% | 100%
src/EpicRoadmap0% | 0% | 0% | 0% | 100%
src0% | 0% | 0% | 0% | 100%
src/Services0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
PortfolioPlanningDataService.ts
in src/PortfolioPlanning/Common/Services
1461 61
FeatureTimelineGrid.tsx
in src/FeatureTimeline/react/Components
546 9
PlanTimeline.tsx
in src/PortfolioPlanning/Components/Plan
537 12
AddItemPanel.tsx
in src/PortfolioPlanning/Components/Plan
502 2
EpicRoadmapGrid.tsx
in src/EpicRoadmap/react/Components
414 4
WorkItemRenderer.tsx
in src/Common/react/Components/WorkItem
380 3
DependencyPanel.tsx
in src/PortfolioPlanning/Components/Plan
363 3
initializeFeatureTimeline.ts
in src/FeatureTimeline/redux/sagas
278 7
EpicTimelineReducer.ts
in src/PortfolioPlanning/Redux/Reducers
278 4
EpicRoadmapGridViewSelector.ts
in src/EpicRoadmap/redux/selectors
248 4
PlanTimeline.scss
in src/PortfolioPlanning/Components/Plan
209 -
workItemHierarchySelector.ts
in src/FeatureTimeline/redux/selectors
208 7
EpicRoadmapView.tsx
in src/EpicRoadmap/react/Components
205 6
PlanPage.tsx
in src/PortfolioPlanning/Components/Plan
199 3
FeatureTimelineGridViewSelector.ts
in src/FeatureTimeline/redux/selectors
198 4
Telemetry.ts
in src/PortfolioPlanning/Common/Utilities
197 13
IterationDuration.tsx
in src/Common/react/Components/IterationDuration
194 2
PortfolioPlanningQueryModels.ts
in src/PortfolioPlanning/Models
179 -
ODataTest.tsx
in src/PortfolioPlanning/Common/Components
173 9
ODataClient.ts
in src/PortfolioPlanning/Common
163 16
EpicTimelineSaga.ts
in src/PortfolioPlanning/Redux/Sagas
157 1
LoadPortfolio.ts
in src/PortfolioPlanning/Redux/Sagas
155 2
BacklogConfigurationDataService.ts
in src/PortfolioPlanning/Common/Services
151 9
AddToPlanAction.tsx
in src/PortfolioPlanning
150 6
workItemStartEndIterationSelector.ts
in src/EpicRoadmap/redux/selectors
143 1
reducer.ts
in src/FeatureTimeline/redux/store/workitems
138 6
WorkItemRenderer.scss
in src/Common/react/Components/WorkItem
129 -
EpicTimelineSelectors.ts
in src/PortfolioPlanning/Redux/Selectors
128 19
FeatureTimelineGrid.scss
in src/FeatureTimeline/react/Components
116 -
PlanDirectorySaga.ts
in src/PortfolioPlanning/Redux/Sagas
116 -
Identity.ts
in src/PortfolioPlanning/Common/Utilities
114 9
PlanDirectory.tsx
in src/PortfolioPlanning/Components/Directory
114 2
EpicRoadmapGrid.scss
in src/EpicRoadmap/react/Components
113 -
EpicTimelineActions.ts
in src/PortfolioPlanning/Redux/Actions
113 -
SelectPlanDialog.tsx
in src/PortfolioPlanning
110 5
CollapsiblePanel.tsx
in src/PortfolioPlanning/Common/Components
106 4
workItemDisplayDetailsSelector.ts
in src/EpicRoadmap/redux/selectors
99 1
DetailsDialog.tsx
in src/PortfolioPlanning/Components/Plan
99 2
Contracts.ts
in src/PortfolioPlanning
99 -
WorkItemList.tsx
in src/Common/react/Components
97 4
NewPlanDialog.tsx
in src/PortfolioPlanning/Components/Directory
95 2
dependencyTreeSelector.ts
in src/EpicRoadmap/redux/selectors
94 7
PredecessorSuccessorIcon.tsx
in src/Common/react/Components/PredecessorSuccessorIcon
93 3
epicTreeSelector.ts
in src/EpicRoadmap/redux/selectors
88 3
types.ts
in src/FeatureTimeline/redux/store
86 -
IterationDisplayOptionsActions.ts
in src/Common/redux/modules/IterationDisplayOptions
83 -
featuretimeline.html
in src/FeatureTimeline
75 -
iterationDisplayOptionsReducer.ts
in src/Common/redux/modules/IterationDisplayOptions
74 1
IterationShadow.tsx
in src/Common/react/Components
73 2
index.ts
in src/FeatureTimeline/redux/selectors
72 -
Files With Most Units (Top 20)
File# lines# units
PortfolioPlanningDataService.ts
in src/PortfolioPlanning/Common/Services
1461 61
EpicTimelineSelectors.ts
in src/PortfolioPlanning/Redux/Selectors
128 19
ODataClient.ts
in src/PortfolioPlanning/Common
163 16
Telemetry.ts
in src/PortfolioPlanning/Common/Utilities
197 13
PlanTimeline.tsx
in src/PortfolioPlanning/Components/Plan
537 12
FeatureTimelineGrid.tsx
in src/FeatureTimeline/react/Components
546 9
ODataTest.tsx
in src/PortfolioPlanning/Common/Components
173 9
BacklogConfigurationDataService.ts
in src/PortfolioPlanning/Common/Services
151 9
Identity.ts
in src/PortfolioPlanning/Common/Utilities
114 9
iterationComparer.ts
in src/Common/redux/Helpers
61 8
dependencyTreeSelector.ts
in src/EpicRoadmap/redux/selectors
94 7
initializeFeatureTimeline.ts
in src/FeatureTimeline/redux/sagas
278 7
workItemHierarchySelector.ts
in src/FeatureTimeline/redux/selectors
208 7
EpicRoadmapView.tsx
in src/EpicRoadmap/react/Components
205 6
reducer.ts
in src/FeatureTimeline/redux/store/workitems
138 6
AddToPlanAction.tsx
in src/PortfolioPlanning
150 6
String.ts
in src/PortfolioPlanning/Common/Utilities
61 6
Comparers.ts
in src/PortfolioPlanning/Common/Utilities
35 5
SelectPlanDialog.tsx
in src/PortfolioPlanning
110 5
WorkItemList.tsx
in src/Common/react/Components
97 4
Files With Long Lines (Top 20)

There are 83 files with lines longer than 120 characters. In total, there are 231 long lines.

File# lines# units# long lines
EpicRoadmapGrid.tsx
in src/EpicRoadmap/react/Components
414 4 14
FeatureTimelineGrid.tsx
in src/FeatureTimeline/react/Components
546 9 14
initializeFeatureTimeline.ts
in src/FeatureTimeline/redux/sagas
278 7 12
workItemHierarchySelector.ts
in src/FeatureTimeline/redux/selectors
208 7 12
EpicRoadmapGridViewSelector.ts
in src/EpicRoadmap/redux/selectors
248 4 11
workItemDisplayDetailsSelector.ts
in src/EpicRoadmap/redux/selectors
99 1 9
FeatureTimelineGridViewSelector.ts
in src/FeatureTimeline/redux/selectors
198 4 7
index.ts
in src/FeatureTimeline/redux/sagas
41 - 6
types.ts
in src/FeatureTimeline/redux/store
86 - 6
WorkItemRenderer.tsx
in src/Common/react/Components/WorkItem
380 3 5
watchEpicRoadmapSagaActions.ts
in src/EpicRoadmap/redux/sagas
33 - 5
featuretimeline.html
in src/FeatureTimeline
75 - 5
iterationDisplayOptionsReducer.ts
in src/Common/redux/modules/IterationDisplayOptions
74 1 4
EpicRoadmapStore.ts
in src/EpicRoadmap/redux
48 1 4
workItemMetadataReducer.ts
in src/EpicRoadmap/redux/modules/workItemMetadata
39 2 4
FetchAllMetadata.ts
in src/EpicRoadmap/redux/sagas
45 - 4
PortfolioPlanning.html
in src/PortfolioPlanning
69 - 4
PredecessorSuccessorIcon.tsx
in src/Common/react/Components/PredecessorSuccessorIcon
93 3 3
workItemOverrideIterationListner.ts
in src/Common/redux/sagas
43 - 3
EpicRoadmap.html
in src/EpicRoadmap
69 - 3