guardian / giant
File Change Frequency

File change frequency (churn) shows the distribution of file updates (days with at least one commit).

Overview
File Change Frequency Overall
  • There are 228 files with 22,376 lines of code.
    • 0 files changed more than 100 times (0 lines of code)
    • 1 file changed 51-100 times (190 lines of code)
    • 11 files changed 21-50 times (2,655 lines of code)
    • 76 files changed 6-20 times (9,612 lines of code)
    • 140 files changed 1-5 times (9,919 lines of code)
0% | <1% | 11% | 42% | 44%
Legend:
101+
51-100
21-50
6-20
1-5

explore: grouped by folders | grouped by update frequency | data
Contributors Count Frequency Overall
  • There are 228 files with 22,376 lines of code.
    • 0 files changed by more than 25 contributors (0 lines of code)
    • 2 files changed by 11-25 contributors (411 lines of code)
    • 13 files changed by 6-10 contributors (1,841 lines of code)
    • 181 files changed by 2-5 contributors (18,178 lines of code)
    • 32 files changed by 1 contributor (1,946 lines of code)
0% | 1% | 8% | 81% | 8%
Legend:
26+
11-25
6-10
2-5
1

explore: grouped by folders | grouped by contributors count | data
File Change Frequency per File Extension
scala, js, properties, ts, tsx, scss, sh, json, svg, css, md, txt, yaml, xml, gitignore, sbt, sql, html, java, snap
File Change Frequency per Extension
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
sbt0% | 97% | 0% | 2% | 0%
scala0% | 0% | 17% | 46% | 36%
tsx0% | 0% | 8% | 62% | 29%
ts0% | 0% | 7% | 28% | 64%
js0% | 0% | 0% | 17% | 82%
css0% | 0% | 0% | 87% | 12%
scss0% | 0% | 0% | 5% | 94%
yaml0% | 0% | 0% | 100% | 0%
sql0% | 0% | 0% | 90% | 10%
java0% | 0% | 0% | 0% | 100%
xml0% | 0% | 0% | 0% | 0%
html0% | 0% | 0% | 0% | 0%
File Change Frequency per Logical Decomposition
primary
primary (file change frequency)
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
ROOT0% | 76% | 0% | 24% | 0%
backend0% | 0% | 17% | 48% | 33%
frontend0% | 0% | 5% | 40% | 54%
common0% | 0% | 25% | 0% | 74%
cli0% | 0% | 0% | 27% | 72%
postgres0% | 0% | 0% | 7% | 92%
project0% | 0% | 0% | 100% | 0%
Most Frequently Changed Files (Top 50)

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsfirst
contributor
latest
contributor
build.sbt
in root
190 1 2021-12-10 2024-11-12 70 14 sam.cutler@guardian.co.uk philip.mcmahon@guardian.co.uk
AppComponents.scala
in backend/app
221 - 2021-05-24 2024-11-12 48 11 michael.barton@guardian.co.uk philip.mcmahon@guardian.co.uk
VirtualScroll.tsx
in frontend/src/js/components/PageViewer
222 - 2022-03-02 2023-08-16 33 5 sam.cutler@guardian.co.uk marjan.kalanaki@guardian.co.uk
PageViewer.tsx
in frontend/src/js/components/PageViewer
119 1 2022-03-02 2023-08-16 28 4 sam.cutler@guardian.co.uk marjan.kalanaki@guardian.co.uk
PageCache.ts
in frontend/src/js/components/PageViewer
143 1 2022-03-02 2023-08-16 25 5 sam.cutler@guardian.co.uk marjan.kalanaki@guardian.co.uk
Models.scala
in backend/app/services/observability
184 9 2023-08-08 2023-11-03 25 4 zeke.huntergreen@guardian.c... philip.mcmahon@guardian.co.uk
PostgresClient.scala
in backend/app/services/observability
239 6 2023-08-10 2023-12-07 25 4 philip.mcmahon@theguardian.com philip.mcmahon@guardian.co.uk
PagesController.scala
in backend/app/controllers/api
120 9 2022-03-02 2024-03-18 24 6 sam.cutler@guardian.co.uk zeke.huntergreen@guardian.c...
FailureToResultMapper.scala
in backend/app/utils/controller
147 4 2021-11-10 2024-10-09 24 5 philip.mcmahon@guardian.co.uk marjan.kalanaki@guardian.co.uk
Neo4jManifest.scala
in backend/app/services/manifest
1046 37 2022-03-28 2024-10-09 24 5 philip.mcmahon@guardian.co.uk marjan.kalanaki@guardian.co.uk
Failure.scala
in common/src/main/scala/utils/attempt
97 2 2022-03-30 2024-10-09 22 5 philip.mcmahon@guardian.co.uk marjan.kalanaki@guardian.co.uk
Blobs.scala
in backend/app/controllers/api
117 7 2021-05-24 2023-10-03 22 7 michael.barton@guardian.co.uk marjan.kalanaki@guardian.co.uk
Page.tsx
in frontend/src/js/components/PageViewer
66 - 2022-03-02 2023-08-16 20 3 sam.cutler@guardian.co.uk marjan.kalanaki@guardian.co.uk
AwsDiscovery.scala
in backend/app/utils
177 9 2021-05-28 2024-10-09 20 8 mbarton@users.noreply.githu... marjan.kalanaki@guardian.co.uk
60 - 2022-01-10 2024-03-05 18 4 philip.mcmahon@guardian.co.uk philip.mcmahon@guardian.co.uk
DeleteResource.scala
in backend/app/commands
63 5 2022-03-30 2023-09-25 18 5 philip.mcmahon@guardian.co.uk philip.mcmahon@theguardian.com
Controls.tsx
in frontend/src/js/components/PageViewer
132 - 2022-03-17 2023-08-16 18 5 sam.cutler@guardian.co.uk marjan.kalanaki@guardian.co.uk
ElasticsearchResources.scala
in backend/app/services/index
720 25 2022-09-30 2024-01-09 18 5 joseph.lochlann@gmail.com marjan.kalanaki@guardian.co.uk
model.ts
in frontend/src/js/components/PageViewer
51 - 2022-03-02 2023-08-16 17 5 sam.cutler@guardian.co.uk marjan.kalanaki@guardian.co.uk
Manifest.scala
in backend/app/services/manifest
60 1 2022-03-28 2024-10-09 17 3 philip.mcmahon@guardian.co.uk marjan.kalanaki@guardian.co.uk
IngestStorePolling.scala
in backend/app/ingestion/phase2
166 8 2021-11-10 2023-10-02 17 5 philip.mcmahon@guardian.co.uk philip.mcmahon@guardian.co.uk
Config.scala
in backend/app/services
198 1 2022-02-25 2024-10-09 17 6 sam.cutler@guardian.co.uk marjan.kalanaki@guardian.co.uk
IngestionEvents.tsx
in frontend/src/js/components/IngestionEvents
531 3 2023-08-17 2023-10-09 17 4 philip.mcmahon@theguardian.com zeke.huntergreen@guardian.c...
Worker.scala
in backend/app/extraction
134 7 2021-05-27 2024-10-09 16 5 mbarton@users.noreply.githu... marjan.kalanaki@guardian.co.uk
Ocr.scala
in backend/app/utils
153 4 2021-05-21 2023-10-18 16 7 michael.barton@guardian.co.uk marjan.kalanaki@guardian.co.uk
Workspaces.tsx
in frontend/src/js/components/workspace
680 6 2023-09-15 2024-09-24 16 5 marjan.kalanaki@guardian.co.uk marjan.kalanaki@guardian.co.uk
PDFUtil.scala
in backend/app/utils
91 5 2022-02-25 2022-10-21 15 5 sam.cutler@guardian.co.uk philip.mcmahon@guardian.co.uk
Pages2.scala
in backend/app/services/index
115 6 2022-03-02 2023-02-09 15 6 sam.cutler@guardian.co.uk joseph.lochlann@gmail.com
Workspaces.scala
in backend/app/controllers/api
273 20 2021-05-25 2024-01-09 15 8 mbarton@users.noreply.githu... philip.mcmahon@theguardian.com
Page.scala
in backend/app/model/index
92 1 2022-02-25 2022-07-01 14 3 sam.cutler@guardian.co.uk joseph.lochlann@gmail.com
Collections.scala
in backend/app/controllers/api
226 14 2022-10-11 2024-01-26 14 5 joseph.lochlann@gmail.com marjan.kalanaki@guardian.co.uk
PdfHelpers.ts
in frontend/src/js/components/PageViewer
63 1 2022-03-03 2024-07-08 13 5 sam.cutler@guardian.co.uk marjan.kalanaki@guardian.co.uk
LruCache.ts
in frontend/src/js/util
70 - 2022-03-08 2023-08-16 13 3 sam.cutler@guardian.co.uk marjan.kalanaki@guardian.co.uk
FindInput.tsx
in frontend/src/js/components/PageViewer
105 - 2022-03-21 2022-07-04 13 2 sam.cutler@guardian.co.uk joseph.lochlann@gmail.com
BlobApi.ts
in frontend/src/js/services
17 3 2022-03-24 2023-09-27 12 4 philip.mcmahon@guardian.co.uk srbd@users.noreply.github.com
PageHighlight.tsx
in frontend/src/js/components/PageViewer
45 - 2022-03-03 2022-07-01 12 3 sam.cutler@guardian.co.uk joseph.lochlann@gmail.com
MetricsService.scala
in backend/app/services
78 7 2021-11-10 2024-03-25 12 7 philip.mcmahon@guardian.co.uk marjan.kalanaki@guardian.co.uk
Neo4jAnnotations.scala
in backend/app/services/annotations
540 23 2022-10-08 2024-10-09 12 4 michael@mbarton.cc marjan.kalanaki@guardian.co.uk
GetPagePreview.scala
in backend/app/commands
19 1 2022-02-25 2023-12-18 11 5 sam.cutler@guardian.co.uk philip.mcmahon@theguardian.com
Whisper.scala
in backend/app/utils
37 2 2023-08-18 2023-11-14 11 4 philip.mcmahon@theguardian.com philip.mcmahon@guardian.co.uk
TranscriptionExtractor.scala
in backend/app/extraction
68 1 2023-08-18 2023-11-14 11 3 philip.mcmahon@theguardian.com philip.mcmahon@guardian.co.uk
App.js
in frontend/src/js
90 2 2022-03-02 2023-11-30 11 5 sam.cutler@guardian.co.uk zeke.huntergreen@guardian.c...
CliIngestionService.scala
in cli/src/main/scala/com/gu/pfi/cli/service
120 11 2022-03-30 2022-10-21 11 3 philip.mcmahon@guardian.co.uk philip.mcmahon@guardian.co.uk
Index.scala
in backend/app/services/index
28 - 2022-09-30 2023-11-13 10 4 joseph.lochlann@gmail.com philip.mcmahon@guardian.co.uk
RequestLoggingFilter.scala
in backend/app/utils
78 4 2022-10-08 2023-12-18 10 4 michael@mbarton.cc philip.mcmahon@theguardian.com
001.do.create_table_ingestion_events.sql
in postgres/migrate-db/src/migrations
18 - 2023-08-07 2023-08-29 9 4 zeke.huntergreen@guardian.c... philip.mcmahon@guardian.co.uk
PageHighlight.module.css
in frontend/src/js/components/PageViewer
35 - 2022-03-16 2022-07-04 9 2 sam.cutler@guardian.co.uk joseph.lochlann@gmail.com
ViewerActions.js
in frontend/src/js/components/viewer
35 1 2022-03-24 2023-09-26 9 3 philip.mcmahon@guardian.co.uk marjan.kalanaki@guardian.co.uk
IngestionEvents.scala
in backend/app/controllers/api
36 1 2023-08-14 2023-09-26 9 2 philip.mcmahon@theguardian.com philip.mcmahon@guardian.co.uk
Resource.scala
in backend/app/controllers/api
77 4 2022-02-25 2024-03-18 9 6 sam.cutler@guardian.co.uk zeke.huntergreen@guardian.c...
Files With Most Contributors (Top 50)
Based on the number of unique email addresses found in commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsfirst
contributor
latest
contributor
build.sbt
in root
190 1 2021-12-10 2024-11-12 70 14 sam.cutler@guardian.co.uk philip.mcmahon@guardian.co.uk
AppComponents.scala
in backend/app
221 - 2021-05-24 2024-11-12 48 11 michael.barton@guardian.co.uk philip.mcmahon@guardian.co.uk
AwsDiscovery.scala
in backend/app/utils
177 9 2021-05-28 2024-10-09 20 8 mbarton@users.noreply.githu... marjan.kalanaki@guardian.co.uk
Workspaces.scala
in backend/app/controllers/api
273 20 2021-05-25 2024-01-09 15 8 mbarton@users.noreply.githu... philip.mcmahon@theguardian.com
Blobs.scala
in backend/app/controllers/api
117 7 2021-05-24 2023-10-03 22 7 michael.barton@guardian.co.uk marjan.kalanaki@guardian.co.uk
Ocr.scala
in backend/app/utils
153 4 2021-05-21 2023-10-18 16 7 michael.barton@guardian.co.uk marjan.kalanaki@guardian.co.uk
MetricsService.scala
in backend/app/services
78 7 2021-11-10 2024-03-25 12 7 philip.mcmahon@guardian.co.uk marjan.kalanaki@guardian.co.uk
PanDomainUserProvider.scala
in backend/app/utils/auth/providers
80 4 2022-05-24 2024-11-12 6 7 samantha.gottlieb@guardian.... philip.mcmahon@guardian.co.uk
PagesController.scala
in backend/app/controllers/api
120 9 2022-03-02 2024-03-18 24 6 sam.cutler@guardian.co.uk zeke.huntergreen@guardian.c...
Config.scala
in backend/app/services
198 1 2022-02-25 2024-10-09 17 6 sam.cutler@guardian.co.uk marjan.kalanaki@guardian.co.uk
Pages2.scala
in backend/app/services/index
115 6 2022-03-02 2023-02-09 15 6 sam.cutler@guardian.co.uk joseph.lochlann@gmail.com
Resource.scala
in backend/app/controllers/api
77 4 2022-02-25 2024-03-18 9 6 sam.cutler@guardian.co.uk zeke.huntergreen@guardian.c...
ElasticsearchPages.scala
in backend/app/services/index
227 10 2021-05-26 2024-01-03 8 6 michael.barton@guardian.co.uk philip.mcmahon@theguardian.com
EmlParser.scala
in backend/app/extraction/email/eml
129 8 2022-02-03 2023-10-20 8 6 sam.cutler@guardian.co.uk zeke.huntergreen@guardian.c...
giant.ts
in postgres/cdk/lib
97 1 2023-08-16 2024-02-02 4 6 marjan.kalanaki@guardian.co.uk sabina.bejasa-dimmock@thegu...
VirtualScroll.tsx
in frontend/src/js/components/PageViewer
222 - 2022-03-02 2023-08-16 33 5 sam.cutler@guardian.co.uk marjan.kalanaki@guardian.co.uk
PageCache.ts
in frontend/src/js/components/PageViewer
143 1 2022-03-02 2023-08-16 25 5 sam.cutler@guardian.co.uk marjan.kalanaki@guardian.co.uk
Neo4jManifest.scala
in backend/app/services/manifest
1046 37 2022-03-28 2024-10-09 24 5 philip.mcmahon@guardian.co.uk marjan.kalanaki@guardian.co.uk
FailureToResultMapper.scala
in backend/app/utils/controller
147 4 2021-11-10 2024-10-09 24 5 philip.mcmahon@guardian.co.uk marjan.kalanaki@guardian.co.uk
Failure.scala
in common/src/main/scala/utils/attempt
97 2 2022-03-30 2024-10-09 22 5 philip.mcmahon@guardian.co.uk marjan.kalanaki@guardian.co.uk
Controls.tsx
in frontend/src/js/components/PageViewer
132 - 2022-03-17 2023-08-16 18 5 sam.cutler@guardian.co.uk marjan.kalanaki@guardian.co.uk
ElasticsearchResources.scala
in backend/app/services/index
720 25 2022-09-30 2024-01-09 18 5 joseph.lochlann@gmail.com marjan.kalanaki@guardian.co.uk
DeleteResource.scala
in backend/app/commands
63 5 2022-03-30 2023-09-25 18 5 philip.mcmahon@guardian.co.uk philip.mcmahon@theguardian.com
model.ts
in frontend/src/js/components/PageViewer
51 - 2022-03-02 2023-08-16 17 5 sam.cutler@guardian.co.uk marjan.kalanaki@guardian.co.uk
IngestStorePolling.scala
in backend/app/ingestion/phase2
166 8 2021-11-10 2023-10-02 17 5 philip.mcmahon@guardian.co.uk philip.mcmahon@guardian.co.uk
Workspaces.tsx
in frontend/src/js/components/workspace
680 6 2023-09-15 2024-09-24 16 5 marjan.kalanaki@guardian.co.uk marjan.kalanaki@guardian.co.uk
Worker.scala
in backend/app/extraction
134 7 2021-05-27 2024-10-09 16 5 mbarton@users.noreply.githu... marjan.kalanaki@guardian.co.uk
PDFUtil.scala
in backend/app/utils
91 5 2022-02-25 2022-10-21 15 5 sam.cutler@guardian.co.uk philip.mcmahon@guardian.co.uk
Collections.scala
in backend/app/controllers/api
226 14 2022-10-11 2024-01-26 14 5 joseph.lochlann@gmail.com marjan.kalanaki@guardian.co.uk
PdfHelpers.ts
in frontend/src/js/components/PageViewer
63 1 2022-03-03 2024-07-08 13 5 sam.cutler@guardian.co.uk marjan.kalanaki@guardian.co.uk
App.js
in frontend/src/js
90 2 2022-03-02 2023-11-30 11 5 sam.cutler@guardian.co.uk zeke.huntergreen@guardian.c...
GetPagePreview.scala
in backend/app/commands
19 1 2022-02-25 2023-12-18 11 5 sam.cutler@guardian.co.uk philip.mcmahon@theguardian.com
ObjectStorage.scala
in backend/app/services
81 11 2022-09-28 2024-10-09 9 5 joseph.lochlann@gmail.com marjan.kalanaki@guardian.co.uk
OcrMyPdfExtractor.scala
in backend/app/extraction/ocr
111 5 2021-05-21 2023-10-18 9 5 michael.barton@guardian.co.uk marjan.kalanaki@guardian.co.uk
Viewer.tsx
in frontend/src/js/components/viewer
315 14 2021-05-27 2023-11-03 8 5 joseph.lochlann@gmail.com philip.mcmahon@guardian.co.uk
MsgEmailExtractor.scala
in backend/app/extraction/email/msg
84 2 2022-03-15 2023-09-19 8 5 philip.mcmahon@guardian.co.uk philip.mcmahon@theguardian.com
OcrMyPdfImageExtractor.scala
in backend/app/extraction/ocr
79 5 2021-05-21 2023-10-18 8 5 michael.barton@guardian.co.uk marjan.kalanaki@guardian.co.uk
Language.scala
in common/src/main/scala/model
83 5 2023-01-09 2023-11-03 5 5 sam.cutler@guardian.co.uk philip.mcmahon@guardian.co.uk
MBoxEmailDetector.scala
in backend/app/extraction/email/mbox
33 1 2022-12-08 2023-09-20 5 5 sam.cutler@theguardian.com philip.mcmahon@guardian.co.uk
AppLoader.scala
in backend/app
27 3 2021-05-28 2023-08-16 4 5 mbarton@users.noreply.githu... marjan.kalanaki@guardian.co.uk
PageViewer.tsx
in frontend/src/js/components/PageViewer
119 1 2022-03-02 2023-08-16 28 4 sam.cutler@guardian.co.uk marjan.kalanaki@guardian.co.uk
Models.scala
in backend/app/services/observability
184 9 2023-08-08 2023-11-03 25 4 zeke.huntergreen@guardian.c... philip.mcmahon@guardian.co.uk
PostgresClient.scala
in backend/app/services/observability
239 6 2023-08-10 2023-12-07 25 4 philip.mcmahon@theguardian.com philip.mcmahon@guardian.co.uk
60 - 2022-01-10 2024-03-05 18 4 philip.mcmahon@guardian.co.uk philip.mcmahon@guardian.co.uk
IngestionEvents.tsx
in frontend/src/js/components/IngestionEvents
531 3 2023-08-17 2023-10-09 17 4 philip.mcmahon@theguardian.com zeke.huntergreen@guardian.c...
BlobApi.ts
in frontend/src/js/services
17 3 2022-03-24 2023-09-27 12 4 philip.mcmahon@guardian.co.uk srbd@users.noreply.github.com
Neo4jAnnotations.scala
in backend/app/services/annotations
540 23 2022-10-08 2024-10-09 12 4 michael@mbarton.cc marjan.kalanaki@guardian.co.uk
Whisper.scala
in backend/app/utils
37 2 2023-08-18 2023-11-14 11 4 philip.mcmahon@theguardian.com philip.mcmahon@guardian.co.uk
Index.scala
in backend/app/services/index
28 - 2022-09-30 2023-11-13 10 4 joseph.lochlann@gmail.com philip.mcmahon@guardian.co.uk
RequestLoggingFilter.scala
in backend/app/utils
78 4 2022-10-08 2023-12-18 10 4 michael@mbarton.cc philip.mcmahon@theguardian.com
Files With Least Contributors (Top 50)
Based on the number of unique email addresses found in commits.

See data for all files...

File# lines# unitscreatedlast modified# changes
(days)
# contributorsfirst
contributor
latest
contributor
workspaceUtils.fixtures.ts
in frontend/src/js/util
940 -
_select.scss
in frontend/src/stylesheets/components
395 -
Node.tsx
in frontend/src/js/components/UtilComponents/TreeBrowser
269 2
index.tsx
in frontend/src/js/components/UtilComponents/TreeBrowser
255 5
Timeline.js
in frontend/src/js/components/EmailBrowser
248 -
Search.js
in frontend/src/js/components/Search
239 6
Login.js
in frontend/src/js/components/Login
232 13
RegisterUser.js
in frontend/src/js/components/users
199 2
GiantEuiLeftHandNav.tsx
in frontend/src/js/eui-components
191 4
Users.tsx
in frontend/src/js/components/Settings
185 6
CommentPanel.tsx
in frontend/src/js/components/viewer/CommentPanel
184 5
CreateGenesisUser.js
in frontend/src/js/components/users
168 3
CliHttpClient.scala
in cli/src/main/scala/com/gu/pfi/cli/service
147 12
StatusBar.js
in frontend/src/js/components/viewer
143 1
LazyTreeBrowser.tsx
in frontend/src/js/components/viewer
133 7
GiantEuiSearchResults.tsx
in frontend/src/js/eui-components
132 4
Events.scala
in backend/app/services/events
131 7
GetResource.scala
in backend/app/commands
128 6
ModalAction.tsx
in frontend/src/js/components/UtilComponents
127 3
_file-browser.scss
in frontend/src/stylesheets/components
118 -
SearchFilterOption.js
in frontend/src/js/components/SearchSidebar
117 3
GiantEuiHeader.tsx
in frontend/src/js/eui-components
113 3
ShareWorkspaceModal.tsx
in frontend/src/js/components/workspace
111 2
Users.scala
in backend/app/controllers/api
111 10
Leaf.tsx
in frontend/src/js/components/UtilComponents/TreeBrowser
110 1
CommentHighlighter.tsx
in frontend/src/js/components/viewer
109 5
CompactResultsTable.js
in frontend/src/js/components/SearchResults
107 4
treeUtils.ts
in frontend/src/js/util
107 10
MimeDetails.scala
in backend/app/utils
106 -
EmailDetails.js
in frontend/src/js/components/viewer
105 6
WorkspacesSidebar.tsx
in frontend/src/js/components/workspace
104 2
Header.js
in frontend/src/js/components
104 6
OlmMessage.scala
in backend/app/extraction/email/olm
99 5
_workspace.scss
in frontend/src/stylesheets/components
96 -
Wizard.js
in frontend/src/js/components/UtilComponents
92 4
authReducer.js
in frontend/src/js/reducers
89 1
Preview.js
in frontend/src/js/components/viewer
89 5
getResource.js
in frontend/src/js/actions/resources
88 9
parseDate.js
in frontend/src/js/util
87 6
SelectionPopover.js
in frontend/src/js/components/UtilComponents
86 7
getAuthToken.js
in frontend/src/js/actions/auth
84 7
SearchFilterValue.js
in frontend/src/js/components/SearchSidebar
83 -
DownloadHelper.scala
in backend/app/utils/controller
83 6
Uploads.tsx
in frontend/src/js/components/Uploads
79 3
SearchResults.js
in frontend/src/js/components/SearchResults
78 3
ResourceTrail.tsx
in frontend/src/js/components/ResourceBreadcrumbs
78 2
ItemName.tsx
in frontend/src/js/components/UtilComponents/TreeBrowser
78 5
FileTypes.tsx
in frontend/src/js/components/Settings/FileTypes
74 1
ErrorBar.js
in frontend/src/js/components/UtilComponents
72 5
Totp.scala
in backend/app/utils/auth/totp
72 7
Correlations

File Size vs. Number of Changes: 228 points

frontend/src/js/components/viewer/DownloadModal.js x: 230 lines of code y: 3 # changes backend/app/extraction/ExternalTranscriptionExtractor.scala x: 144 lines of code y: 6 # changes backend/app/AppComponents.scala x: 221 lines of code y: 48 # changes backend/app/utils/auth/providers/PanDomainUserProvider.scala x: 80 lines of code y: 6 # changes build.sbt x: 190 lines of code y: 70 # changes project/plugins.sbt x: 4 lines of code y: 8 # changes backend/app/extraction/ExternalExtractor.scala x: 11 lines of code y: 3 # changes backend/app/extraction/ExternalTranscriptionWorker.scala x: 149 lines of code y: 4 # changes backend/app/extraction/Extractor.scala x: 16 lines of code y: 2 # changes backend/app/extraction/Worker.scala x: 134 lines of code y: 16 # changes backend/app/services/Config.scala x: 198 lines of code y: 17 # changes backend/app/services/ExternalWorkerScheduler.scala x: 33 lines of code y: 3 # changes backend/app/services/ObjectStorage.scala x: 81 lines of code y: 9 # changes backend/app/services/annotations/Neo4jAnnotations.scala x: 540 lines of code y: 12 # changes backend/app/services/manifest/Manifest.scala x: 60 lines of code y: 17 # changes backend/app/services/manifest/Neo4jManifest.scala x: 1046 lines of code y: 24 # changes backend/app/utils/AwsDiscovery.scala x: 177 lines of code y: 20 # changes backend/app/utils/controller/FailureToResultMapper.scala x: 147 lines of code y: 24 # changes common/src/main/scala/utils/attempt/Failure.scala x: 97 lines of code y: 22 # changes frontend/src/js/util/resourceUtils.ts x: 89 lines of code y: 5 # changes frontend/src/js/actions/workspaces/deleteItem.ts x: 29 lines of code y: 1 # changes frontend/src/js/components/workspace/ConfirmModal.tsx x: 134 lines of code y: 1 # changes frontend/src/js/components/workspace/Workspaces.tsx x: 680 lines of code y: 16 # changes frontend/src/js/components/SearchResults/visualizations/TimeHistogram.js x: 112 lines of code y: 7 # changes frontend/src/js/components/PageViewer/PdfHelpers.ts x: 63 lines of code y: 13 # changes frontend/src/js/components/viewer/PageViewer/pageViewerPdf.ts x: 62 lines of code y: 4 # changes frontend/src/setupProxy.js x: 6 lines of code y: 4 # changes backend/app/controllers/api/Search.scala x: 159 lines of code y: 3 # changes backend/app/services/MetricsService.scala x: 78 lines of code y: 12 # changes backend/app/controllers/api/PagesController.scala x: 120 lines of code y: 24 # changes backend/app/controllers/api/Resource.scala x: 77 lines of code y: 9 # changes backend/app/model/frontend/Chip.scala x: 92 lines of code y: 1 # changes backend/app/model/index/SearchParameters.scala x: 22 lines of code y: 1 # changes frontend/src/js/components/UtilComponents/InputSupper/Chip.js x: 318 lines of code y: 1 # changes frontend/src/js/components/UtilComponents/InputSupper/index.js x: 354 lines of code y: 2 # changes backend/app/extraction/email/olm/OlmEmailExtractor.scala x: 142 lines of code y: 4 # changes riff-raff.yaml x: 60 lines of code y: 18 # changes postgres/cdk/lib/giant.ts x: 97 lines of code y: 4 # changes backend/app/commands/CreateIngestion.scala x: 50 lines of code y: 4 # changes backend/app/commands/IngestFile.scala x: 82 lines of code y: 8 # changes backend/app/controllers/api/Collections.scala x: 226 lines of code y: 14 # changes frontend/src/js/components/Uploads/UploadFiles.tsx x: 292 lines of code y: 6 # changes frontend/src/js/components/Uploads/UploadTarget.ts x: 36 lines of code y: 4 # changes frontend/src/js/services/CollectionsApi.ts x: 27 lines of code y: 2 # changes frontend/src/js/util/auth/authUploadWithProgress.ts x: 141 lines of code y: 6 # changes backend/app/controllers/api/Workspaces.scala x: 273 lines of code y: 15 # changes backend/app/services/annotations/Annotations.scala x: 43 lines of code y: 6 # changes frontend/src/js/actions/workspaces/copyItem.ts x: 40 lines of code y: 2 # changes frontend/src/js/components/workspace/CopyOrMoveModal.tsx x: 21 lines of code y: 3 # changes frontend/src/js/components/workspace/WorkspacesSidebarItem.tsx x: 54 lines of code y: 4 # changes frontend/src/js/services/WorkspaceApi.ts x: 118 lines of code y: 5 # changes backend/app/services/index/ElasticsearchResources.scala x: 720 lines of code y: 18 # changes backend/app/services/index/ElasticsearchPages.scala x: 227 lines of code y: 8 # changes backend/app/services/ElasticsearchSyntax.scala x: 119 lines of code y: 4 # changes backend/app/services/index/SearchContext.scala x: 115 lines of code y: 2 # changes backend/app/services/table/Table.scala x: 53 lines of code y: 2 # changes backend/app/commands/GetPagePreview.scala x: 19 lines of code y: 11 # changes backend/app/controllers/api/Previews.scala x: 60 lines of code y: 6 # changes backend/app/utils/RequestLoggingFilter.scala x: 78 lines of code y: 10 # changes backend/app/utils/WorkerControl.scala x: 178 lines of code y: 6 # changes backend/app/services/observability/PostgresClient.scala x: 239 lines of code y: 25 # changes frontend/src/js/App.js x: 90 lines of code y: 11 # changes frontend/src/js/components/UtilComponents/Token.tsx x: 19 lines of code y: 1 # changes backend/app/model/frontend/Node.scala x: 6 lines of code y: 5 # changes backend/app/utils/AllowFrameFilter.scala x: 16 lines of code y: 5 # changes backend/app/extraction/TranscriptionExtractor.scala x: 68 lines of code y: 11 # changes backend/app/utils/Whisper.scala x: 37 lines of code y: 11 # changes backend/app/services/index/Index.scala x: 28 lines of code y: 10 # changes frontend/src/js/components/workspace/WorkspaceSummary.tsx x: 104 lines of code y: 3 # changes backend/app/utils/auth/AuthActionBuilder.scala x: 88 lines of code y: 4 # changes backend/app/model/frontend/Resource.scala x: 165 lines of code y: 4 # changes backend/app/model/index/Document.scala x: 18 lines of code y: 2 # changes backend/app/services/index/HighlightFields.scala x: 106 lines of code y: 2 # changes backend/app/services/index/HitReaders.scala x: 271 lines of code y: 8 # changes backend/app/services/observability/Models.scala x: 184 lines of code y: 25 # changes backend/app/utils/BasicStdErrLogger.scala x: 12 lines of code y: 2 # changes backend/app/utils/FfMpeg.scala x: 19 lines of code y: 3 # changes common/src/main/scala/model/Language.scala x: 83 lines of code y: 5 # changes frontend/src/js/components/SearchResults/SearchResult.js x: 139 lines of code y: 2 # changes frontend/src/js/components/viewer/PreviewSwitcher.js x: 114 lines of code y: 4 # changes frontend/src/js/components/viewer/Viewer.tsx x: 315 lines of code y: 8 # changes frontend/src/js/types/Resource.ts x: 69 lines of code y: 2 # changes backend/app/extraction/email/eml/EmlParser.scala x: 129 lines of code y: 8 # changes backend/app/extraction/ocr/BaseOcrExtractor.scala x: 30 lines of code y: 4 # changes backend/app/extraction/ocr/OcrMyPdfExtractor.scala x: 111 lines of code y: 9 # changes backend/app/extraction/ocr/OcrMyPdfImageExtractor.scala x: 79 lines of code y: 8 # changes backend/app/utils/Ocr.scala x: 153 lines of code y: 16 # changes backend/app/services/WorkerScheduler.scala x: 37 lines of code y: 5 # changes frontend/src/js/components/IngestionEvents/IngestionEvents.tsx x: 531 lines of code y: 17 # changes frontend/src/js/components/IngestionEvents/types.ts x: 53 lines of code y: 6 # changes backend/app/controllers/api/Blobs.scala x: 117 lines of code y: 22 # changes backend/app/ingestion/phase2/IngestStorePolling.scala x: 166 lines of code y: 17 # changes backend/app/services/IngestStorage.scala x: 102 lines of code y: 5 # changes frontend/src/js/services/BlobApi.ts x: 17 lines of code y: 12 # changes backend/app/model/manifest/Collection.scala x: 46 lines of code y: 2 # changes frontend/src/js/components/viewer/ViewerActions.js x: 35 lines of code y: 9 # changes backend/app/controllers/api/IngestionEvents.scala x: 36 lines of code y: 9 # changes backend/app/commands/DeleteResource.scala x: 63 lines of code y: 18 # changes backend/app/model/annotations/Workspace.scala x: 157 lines of code y: 3 # changes backend/app/extraction/email/EmailContentTypeCleaner.java x: 9 lines of code y: 2 # changes backend/app/extraction/email/JakartaMail.scala x: 32 lines of code y: 4 # changes backend/app/extraction/email/eml/EmlEmailExtractor.scala x: 37 lines of code y: 2 # changes backend/app/extraction/email/mbox/MBoxEmailDetector.scala x: 33 lines of code y: 5 # changes backend/app/extraction/email/mbox/MBoxEmailExtractor.scala x: 34 lines of code y: 3 # changes backend/app/services/users/Neo4jUserManagement.scala x: 388 lines of code y: 4 # changes backend/app/services/users/UserManagement.scala x: 31 lines of code y: 2 # changes frontend/src/js/types/Workspaces.ts x: 35 lines of code y: 2 # changes backend/app/extraction/email/msg/MsgEmailExtractor.scala x: 84 lines of code y: 8 # changes frontend/src/js/components/Settings/SettingsSidebar.js x: 75 lines of code y: 3 # changes frontend/src/js/components/Uploads/FileList.tsx x: 110 lines of code y: 2 # changes frontend/src/js/components/IngestionEvents/IngestionEvents.module.css x: 11 lines of code y: 4 # changes frontend/src/js/components/IngestionEvents/AllIngestionEvents.tsx x: 128 lines of code y: 6 # changes frontend/src/js/components/IngestionEvents/MyUploads.tsx x: 115 lines of code y: 6 # changes frontend/src/js/actions/ingestEvents/updateCurrentWorkspace.ts x: 7 lines of code y: 1 # changes frontend/src/js/reducers/urlParamsReducer.ts x: 83 lines of code y: 1 # changes frontend/src/js/types/redux/GiantActions.ts x: 252 lines of code y: 3 # changes frontend/src/js/types/redux/GiantState.ts x: 75 lines of code y: 1 # changes backend/app/services/ingestion/IngestionServices.scala x: 111 lines of code y: 8 # changes postgres/migrate-db/src/migrations/001.do.create_table_ingestion_events.sql x: 18 lines of code y: 9 # changes backend/app/services/index/IngestionData.scala x: 10 lines of code y: 2 # changes postgres/migrate-db/esbuild-runner.config.js x: 6 lines of code y: 2 # changes postgres/migrate-db/src/index.ts x: 106 lines of code y: 3 # changes postgres/migrate-db/src/migrations/001.undo.create_table_ingestion_events.sql x: 2 lines of code y: 3 # changes backend/app/AppLoader.scala x: 27 lines of code y: 4 # changes frontend/src/js/components/PageViewer/Controls.tsx x: 132 lines of code y: 18 # changes frontend/src/js/components/PageViewer/Page.tsx x: 66 lines of code y: 20 # changes frontend/src/js/components/PageViewer/PageCache.ts x: 143 lines of code y: 25 # changes frontend/src/js/components/PageViewer/PageViewer.tsx x: 119 lines of code y: 28 # changes frontend/src/js/components/PageViewer/VirtualScroll.module.css x: 22 lines of code y: 6 # changes frontend/src/js/components/PageViewer/VirtualScroll.tsx x: 222 lines of code y: 33 # changes frontend/src/js/components/PageViewer/model.ts x: 51 lines of code y: 17 # changes frontend/src/js/util/LruCache.ts x: 70 lines of code y: 13 # changes cli/src/main/scala/com/gu/pfi/cli/ingestion/CliFileWalker.scala x: 30 lines of code y: 5 # changes frontend/src/js/actions/resources/getComments.ts x: 24 lines of code y: 2 # changes frontend/src/js/components/PageViewer/Controls.module.css x: 15 lines of code y: 8 # changes frontend/src/js/components/Settings/ExtractionFailuresComponent.tsx x: 97 lines of code y: 2 # changes frontend/src/js/components/Settings/FileTypes/MimeTypeProgress.tsx x: 14 lines of code y: 2 # changes frontend/src/js/components/Settings/ResourcesForExtractionFailureComponent.tsx x: 39 lines of code y: 2 # changes frontend/src/js/components/Uploads/FilePicker.tsx x: 104 lines of code y: 2 # changes frontend/src/js/components/viewer/AddToWorkspaceModal.tsx x: 143 lines of code y: 2 # changes frontend/src/js/components/viewer/PageViewer/PagePreview.tsx x: 98 lines of code y: 7 # changes frontend/src/js/components/viewer/TextPreview.tsx x: 86 lines of code y: 2 # changes frontend/src/js/components/workspace/CreateWorkspaceModal.tsx x: 159 lines of code y: 2 # changes frontend/src/js/util/store.js x: 36 lines of code y: 3 # changes frontend/src/stylesheets/base/_dataTable.scss x: 42 lines of code y: 2 # changes frontend/src/stylesheets/components/_buttons.scss x: 94 lines of code y: 2 # changes frontend/src/stylesheets/components/_checkbox.scss x: 60 lines of code y: 2 # changes frontend/src/stylesheets/components/_forms.scss x: 68 lines of code y: 6 # changes frontend/src/stylesheets/components/_search.scss x: 228 lines of code y: 2 # changes frontend/src/stylesheets/components/_sidebar.scss x: 116 lines of code y: 2 # changes backend/app/utils/auth/providers/DatabaseUserProvider.scala x: 101 lines of code y: 2 # changes backend/app/extraction/MetadataEnrichment.scala x: 79 lines of code y: 1 # changes backend/app/services/Tika.scala x: 84 lines of code y: 3 # changes backend/app/utils/HtmlToPlainText.scala x: 93 lines of code y: 6 # changes backend/app/extraction/tables/CsvTableExtractor.scala x: 34 lines of code y: 4 # changes backend/app/services/index/Pages2.scala x: 115 lines of code y: 15 # changes common/src/main/scala/utils/Timing.scala x: 26 lines of code y: 2 # changes backend/app/extraction/ocr/TesseractPdfOcrExtractor.scala x: 70 lines of code y: 5 # changes backend/app/ingestion/IngestionContextBuilder.scala x: 55 lines of code y: 2 # changes backend/app/model/Email.scala x: 176 lines of code y: 6 # changes backend/app/model/frontend/email/EmailThread.scala x: 45 lines of code y: 2 # changes backend/app/services/index/Aggregations.scala x: 61 lines of code y: 2 # changes backend/app/utils/Neo4jHelper.scala x: 269 lines of code y: 2 # changes backend/app/utils/PDFUtil.scala x: 91 lines of code y: 15 # changes backend/app/utils/aws/AwsAsyncHandler.scala x: 33 lines of code y: 2 # changes cli/src/main/scala/com/gu/pfi/cli/DeleteIngestions.scala x: 56 lines of code y: 7 # changes cli/src/main/scala/com/gu/pfi/cli/Main.scala x: 143 lines of code y: 5 # changes cli/src/main/scala/com/gu/pfi/cli/ingestion/CliIngestionPipeline.scala x: 127 lines of code y: 2 # changes cli/src/main/scala/com/gu/pfi/cli/service/CliIngestionService.scala x: 120 lines of code y: 11 # changes common/src/main/scala/utils/attempt/Attempt.scala x: 135 lines of code y: 2 # changes backend/app/model/ingestion/OcrMyPdfFlag.scala x: 13 lines of code y: 1 # changes backend/app/services/previewing/PreviewService.scala x: 137 lines of code y: 4 # changes frontend/src/js/components/viewer/EmbeddedPdfViewer.tsx x: 33 lines of code y: 4 # changes frontend/src/js/components/viewer/DocumentMetadata.js x: 125 lines of code y: 7 # changes cli/src/main/scala/com/gu/pfi/cli/Options.scala x: 147 lines of code y: 3 # changes cli/src/main/scala/com/gu/pfi/cli/model/ConflictBehaviour.scala x: 13 lines of code y: 3 # changes frontend/src/js/components/PageViewer/FindInput.module.css x: 50 lines of code y: 7 # changes frontend/src/js/components/PageViewer/FindInput.tsx x: 105 lines of code y: 13 # changes frontend/src/js/components/PageViewer/PageViewer.module.css x: 12 lines of code y: 7 # changes frontend/src/js/components/UtilComponents/InputSupper/InlineInput.js x: 123 lines of code y: 1 # changes backend/app/model/index/Page.scala x: 92 lines of code y: 14 # changes frontend/src/js/components/PageViewer/PageHighlight.tsx x: 45 lines of code y: 12 # changes backend/app/commands/GetPages.scala x: 67 lines of code y: 8 # changes backend/app/controllers/api/Authentication.scala x: 57 lines of code y: 3 # changes backend/app/controllers/frontend/App.scala x: 48 lines of code y: 3 # changes frontend/src/js/components/PageViewer/Page.module.css x: 9 lines of code y: 5 # changes frontend/src/js/components/PageViewer/PageOverlayText.tsx x: 14 lines of code y: 3 # changes frontend/src/js/components/SearchSidebar/SearchSidebar.js x: 88 lines of code y: 3 # changes frontend/src/js/components/viewer/EmailMetadata.js x: 40 lines of code y: 4 # changes frontend/src/js/components/viewer/PageViewer/pageViewerApi.ts x: 79 lines of code y: 7 # changes frontend/src/js/components/viewer/ViewerSidebar.js x: 85 lines of code y: 4 # changes frontend/src/js/reducers/pagesReducer.ts x: 99 lines of code y: 7 # changes frontend/src/stylesheets/components/_document.scss x: 279 lines of code y: 2 # changes frontend/src/js/components/viewer/PageViewer/PageViewer.tsx x: 80 lines of code y: 3 # changes
70.0
# changes
  min: 1.0
  average: 6.74
  25th percentile: 2.0
  median: 4.0
  75th percentile: 8.0
  max: 70.0
0 1046.0
lines of code
min: 2.0 | average: 98.14 | 25th percentile: 32.25 | median: 69.5 | 75th percentile: 119.75 | max: 1046.0

Number of Contributors vs. Number of Changes: 228 points

frontend/src/js/components/viewer/DownloadModal.js x: 2 # contributors y: 3 # changes backend/app/extraction/ExternalTranscriptionExtractor.scala x: 3 # contributors y: 6 # changes backend/app/AppComponents.scala x: 11 # contributors y: 48 # changes backend/app/utils/auth/providers/PanDomainUserProvider.scala x: 7 # contributors y: 6 # changes build.sbt x: 14 # contributors y: 70 # changes project/plugins.sbt x: 3 # contributors y: 8 # changes backend/app/extraction/ExternalTranscriptionWorker.scala x: 1 # contributors y: 4 # changes backend/app/extraction/Extractor.scala x: 2 # contributors y: 2 # changes backend/app/extraction/Worker.scala x: 5 # contributors y: 16 # changes backend/app/services/Config.scala x: 6 # contributors y: 17 # changes backend/app/services/ExternalWorkerScheduler.scala x: 1 # contributors y: 3 # changes backend/app/services/ObjectStorage.scala x: 5 # contributors y: 9 # changes backend/app/services/annotations/Neo4jAnnotations.scala x: 4 # contributors y: 12 # changes backend/app/services/manifest/Manifest.scala x: 3 # contributors y: 17 # changes backend/app/services/manifest/Neo4jManifest.scala x: 5 # contributors y: 24 # changes backend/app/utils/AwsDiscovery.scala x: 8 # contributors y: 20 # changes common/src/main/scala/utils/attempt/Failure.scala x: 5 # contributors y: 22 # changes frontend/src/js/util/resourceUtils.ts x: 4 # contributors y: 5 # changes frontend/src/js/actions/workspaces/deleteItem.ts x: 1 # contributors y: 1 # changes frontend/src/js/components/SearchResults/visualizations/TimeHistogram.js x: 3 # contributors y: 7 # changes frontend/src/js/components/PageViewer/PdfHelpers.ts x: 5 # contributors y: 13 # changes frontend/src/js/components/viewer/PageViewer/pageViewerPdf.ts x: 3 # contributors y: 4 # changes backend/app/services/MetricsService.scala x: 7 # contributors y: 12 # changes backend/app/controllers/api/PagesController.scala x: 6 # contributors y: 24 # changes backend/app/controllers/api/Resource.scala x: 6 # contributors y: 9 # changes backend/app/extraction/archives/ZipExtractor.scala x: 4 # contributors y: 4 # changes riff-raff.yaml x: 4 # contributors y: 18 # changes postgres/cdk/lib/giant.ts x: 6 # contributors y: 4 # changes backend/app/controllers/api/Collections.scala x: 5 # contributors y: 14 # changes frontend/src/js/components/Uploads/UploadFiles.tsx x: 4 # contributors y: 6 # changes frontend/src/js/services/CollectionsApi.ts x: 1 # contributors y: 2 # changes frontend/src/js/util/auth/authUploadWithProgress.ts x: 1 # contributors y: 6 # changes backend/app/controllers/api/Workspaces.scala x: 8 # contributors y: 15 # changes frontend/src/js/components/workspace/WorkspacesSidebarItem.tsx x: 2 # contributors y: 4 # changes frontend/src/js/services/WorkspaceApi.ts x: 3 # contributors y: 5 # changes backend/app/services/index/ElasticsearchResources.scala x: 5 # contributors y: 18 # changes backend/app/services/index/ElasticsearchPages.scala x: 6 # contributors y: 8 # changes backend/app/commands/GetPagePreview.scala x: 5 # contributors y: 11 # changes backend/app/utils/RequestLoggingFilter.scala x: 4 # contributors y: 10 # changes backend/app/services/observability/PostgresClient.scala x: 4 # contributors y: 25 # changes backend/app/extraction/TranscriptionExtractor.scala x: 3 # contributors y: 11 # changes backend/app/utils/Whisper.scala x: 4 # contributors y: 11 # changes backend/app/services/index/HitReaders.scala x: 4 # contributors y: 8 # changes common/src/main/scala/model/Language.scala x: 5 # contributors y: 5 # changes frontend/src/js/components/SearchResults/SearchResult.js x: 3 # contributors y: 2 # changes frontend/src/js/components/viewer/Viewer.tsx x: 5 # contributors y: 8 # changes backend/app/utils/Ocr.scala x: 7 # contributors y: 16 # changes frontend/src/js/components/IngestionEvents/IngestionEvents.tsx x: 4 # contributors y: 17 # changes backend/app/controllers/api/Blobs.scala x: 7 # contributors y: 22 # changes backend/app/ingestion/phase2/IngestStorePolling.scala x: 5 # contributors y: 17 # changes frontend/src/js/components/viewer/DeleteButtonModal.tsx x: 3 # contributors y: 9 # changes backend/app/controllers/api/IngestionEvents.scala x: 2 # contributors y: 9 # changes backend/app/extraction/email/mbox/MBoxEmailExtractor.scala x: 3 # contributors y: 3 # changes postgres/migrate-db/src/migrations/001.do.create_table_ingestion_events.sql x: 4 # contributors y: 9 # changes backend/app/AppLoader.scala x: 5 # contributors y: 4 # changes frontend/src/js/components/PageViewer/Page.tsx x: 3 # contributors y: 20 # changes frontend/src/js/components/PageViewer/PageCache.ts x: 5 # contributors y: 25 # changes frontend/src/js/components/PageViewer/PageViewer.tsx x: 4 # contributors y: 28 # changes frontend/src/js/components/PageViewer/VirtualScroll.tsx x: 5 # contributors y: 33 # changes frontend/src/js/util/LruCache.ts x: 3 # contributors y: 13 # changes frontend/src/js/components/viewer/PageViewer/PagePreview.tsx x: 4 # contributors y: 7 # changes backend/app/extraction/MetadataEnrichment.scala x: 2 # contributors y: 1 # changes backend/app/services/Tika.scala x: 4 # contributors y: 3 # changes backend/app/services/index/Pages2.scala x: 6 # contributors y: 15 # changes backend/app/utils/PDFUtil.scala x: 5 # contributors y: 15 # changes frontend/src/js/components/PageViewer/FindInput.module.css x: 2 # contributors y: 7 # changes frontend/src/js/components/PageViewer/FindInput.tsx x: 2 # contributors y: 13 # changes backend/app/model/index/Page.scala x: 3 # contributors y: 14 # changes frontend/src/js/components/PageViewer/PageHighlight.tsx x: 3 # contributors y: 12 # changes backend/app/commands/GetPages.scala x: 2 # contributors y: 8 # changes frontend/src/js/components/PageViewer/Page.module.css x: 2 # contributors y: 5 # changes
70.0
# changes
  min: 1.0
  average: 6.74
  25th percentile: 2.0
  median: 4.0
  75th percentile: 8.0
  max: 70.0
0 14.0
# contributors
min: 1.0 | average: 2.97 | 25th percentile: 2.0 | median: 2.0 | 75th percentile: 4.0 | max: 14.0

Number of Contributors vs. File Size: 228 points

frontend/src/js/components/viewer/DownloadModal.js x: 2 # contributors y: 230 lines of code backend/app/extraction/ExternalTranscriptionExtractor.scala x: 3 # contributors y: 144 lines of code backend/app/AppComponents.scala x: 11 # contributors y: 221 lines of code backend/app/utils/auth/providers/PanDomainUserProvider.scala x: 7 # contributors y: 80 lines of code build.sbt x: 14 # contributors y: 190 lines of code project/plugins.sbt x: 3 # contributors y: 4 lines of code backend/app/extraction/ExternalExtractor.scala x: 2 # contributors y: 11 lines of code backend/app/extraction/ExternalTranscriptionWorker.scala x: 1 # contributors y: 149 lines of code backend/app/extraction/Extractor.scala x: 2 # contributors y: 16 lines of code backend/app/extraction/Worker.scala x: 5 # contributors y: 134 lines of code backend/app/services/Config.scala x: 6 # contributors y: 198 lines of code backend/app/services/ExternalWorkerScheduler.scala x: 1 # contributors y: 33 lines of code backend/app/services/ObjectStorage.scala x: 5 # contributors y: 81 lines of code backend/app/services/annotations/Neo4jAnnotations.scala x: 4 # contributors y: 540 lines of code backend/app/services/manifest/Manifest.scala x: 3 # contributors y: 60 lines of code backend/app/services/manifest/Neo4jManifest.scala x: 5 # contributors y: 1046 lines of code backend/app/utils/AwsDiscovery.scala x: 8 # contributors y: 177 lines of code backend/app/utils/controller/FailureToResultMapper.scala x: 5 # contributors y: 147 lines of code common/src/main/scala/utils/attempt/Failure.scala x: 5 # contributors y: 97 lines of code frontend/src/js/util/resourceUtils.ts x: 4 # contributors y: 89 lines of code frontend/src/js/actions/workspaces/deleteItem.ts x: 1 # contributors y: 29 lines of code frontend/src/js/components/workspace/ConfirmModal.tsx x: 1 # contributors y: 134 lines of code frontend/src/js/components/workspace/Workspaces.tsx x: 5 # contributors y: 680 lines of code frontend/src/js/components/SearchResults/visualizations/TimeHistogram.js x: 3 # contributors y: 112 lines of code frontend/src/js/components/PageViewer/PdfHelpers.ts x: 5 # contributors y: 63 lines of code frontend/src/js/components/viewer/PageViewer/pageViewerPdf.ts x: 3 # contributors y: 62 lines of code frontend/src/setupProxy.js x: 3 # contributors y: 6 lines of code backend/app/controllers/api/Search.scala x: 2 # contributors y: 159 lines of code backend/app/services/MetricsService.scala x: 7 # contributors y: 78 lines of code backend/app/controllers/api/PagesController.scala x: 6 # contributors y: 120 lines of code backend/app/controllers/api/Resource.scala x: 6 # contributors y: 77 lines of code backend/app/model/frontend/Chip.scala x: 1 # contributors y: 92 lines of code backend/app/model/index/SearchParameters.scala x: 1 # contributors y: 22 lines of code frontend/src/js/components/UtilComponents/InputSupper/Chip.js x: 1 # contributors y: 318 lines of code frontend/src/js/components/UtilComponents/InputSupper/index.js x: 2 # contributors y: 354 lines of code backend/app/extraction/archives/ZipExtractor.scala x: 4 # contributors y: 61 lines of code backend/app/extraction/email/olm/OlmEmailExtractor.scala x: 4 # contributors y: 142 lines of code postgres/cdk/lib/giant.ts x: 6 # contributors y: 97 lines of code backend/app/commands/CreateIngestion.scala x: 1 # contributors y: 50 lines of code backend/app/commands/IngestFile.scala x: 3 # contributors y: 82 lines of code backend/app/controllers/api/Collections.scala x: 5 # contributors y: 226 lines of code frontend/src/js/components/Uploads/UploadFiles.tsx x: 4 # contributors y: 292 lines of code frontend/src/js/components/Uploads/UploadTarget.ts x: 3 # contributors y: 36 lines of code frontend/src/js/services/CollectionsApi.ts x: 1 # contributors y: 27 lines of code frontend/src/js/util/auth/authUploadWithProgress.ts x: 1 # contributors y: 141 lines of code backend/app/controllers/api/Workspaces.scala x: 8 # contributors y: 273 lines of code backend/app/services/annotations/Annotations.scala x: 3 # contributors y: 43 lines of code frontend/src/js/actions/workspaces/copyItem.ts x: 2 # contributors y: 40 lines of code frontend/src/js/components/workspace/CopyOrMoveModal.tsx x: 2 # contributors y: 21 lines of code frontend/src/js/components/workspace/WorkspacesSidebarItem.tsx x: 2 # contributors y: 54 lines of code frontend/src/js/services/WorkspaceApi.ts x: 3 # contributors y: 118 lines of code backend/app/services/index/ElasticsearchResources.scala x: 5 # contributors y: 720 lines of code backend/app/services/index/ElasticsearchPages.scala x: 6 # contributors y: 227 lines of code backend/app/services/index/SearchContext.scala x: 2 # contributors y: 115 lines of code backend/app/services/table/Table.scala x: 2 # contributors y: 53 lines of code backend/app/commands/GetPagePreview.scala x: 5 # contributors y: 19 lines of code backend/app/utils/RequestLoggingFilter.scala x: 4 # contributors y: 78 lines of code backend/app/utils/WorkerControl.scala x: 4 # contributors y: 178 lines of code backend/app/services/observability/PostgresClient.scala x: 4 # contributors y: 239 lines of code frontend/src/js/App.js x: 5 # contributors y: 90 lines of code frontend/src/js/components/UtilComponents/Token.tsx x: 1 # contributors y: 19 lines of code backend/app/utils/AllowFrameFilter.scala x: 3 # contributors y: 16 lines of code backend/app/extraction/TranscriptionExtractor.scala x: 3 # contributors y: 68 lines of code backend/app/utils/Whisper.scala x: 4 # contributors y: 37 lines of code backend/app/services/index/Index.scala x: 4 # contributors y: 28 lines of code frontend/src/js/components/workspace/WorkspaceSummary.tsx x: 2 # contributors y: 104 lines of code backend/app/model/frontend/Resource.scala x: 3 # contributors y: 165 lines of code backend/app/model/index/Document.scala x: 2 # contributors y: 18 lines of code backend/app/services/index/HitReaders.scala x: 4 # contributors y: 271 lines of code backend/app/services/observability/Models.scala x: 4 # contributors y: 184 lines of code common/src/main/scala/model/Language.scala x: 5 # contributors y: 83 lines of code frontend/src/js/components/SearchResults/SearchResult.js x: 3 # contributors y: 139 lines of code frontend/src/js/components/viewer/Viewer.tsx x: 5 # contributors y: 315 lines of code frontend/src/js/types/Resource.ts x: 2 # contributors y: 69 lines of code backend/app/extraction/email/eml/EmlParser.scala x: 6 # contributors y: 129 lines of code backend/app/extraction/ocr/BaseOcrExtractor.scala x: 3 # contributors y: 30 lines of code backend/app/extraction/ocr/OcrMyPdfExtractor.scala x: 5 # contributors y: 111 lines of code backend/app/utils/Ocr.scala x: 7 # contributors y: 153 lines of code backend/app/extraction/tables/ExcelTableExtractor.scala x: 3 # contributors y: 129 lines of code frontend/src/js/components/IngestionEvents/IngestionEvents.tsx x: 4 # contributors y: 531 lines of code frontend/src/js/components/IngestionEvents/types.ts x: 4 # contributors y: 53 lines of code backend/app/controllers/api/Blobs.scala x: 7 # contributors y: 117 lines of code backend/app/ingestion/phase2/IngestStorePolling.scala x: 5 # contributors y: 166 lines of code backend/app/services/IngestStorage.scala x: 3 # contributors y: 102 lines of code frontend/src/js/services/BlobApi.ts x: 4 # contributors y: 17 lines of code backend/app/model/manifest/Collection.scala x: 1 # contributors y: 46 lines of code backend/app/controllers/api/IngestionEvents.scala x: 2 # contributors y: 36 lines of code backend/app/model/annotations/Workspace.scala x: 1 # contributors y: 157 lines of code backend/app/extraction/email/mbox/MBoxEmailDetector.scala x: 5 # contributors y: 33 lines of code backend/app/services/users/Neo4jUserManagement.scala x: 3 # contributors y: 388 lines of code frontend/src/js/components/Settings/SettingsSidebar.js x: 2 # contributors y: 75 lines of code frontend/src/js/components/Uploads/FileList.tsx x: 2 # contributors y: 110 lines of code frontend/src/js/components/IngestionEvents/AllIngestionEvents.tsx x: 4 # contributors y: 128 lines of code frontend/src/js/components/IngestionEvents/MyUploads.tsx x: 4 # contributors y: 115 lines of code frontend/src/js/actions/ingestEvents/updateCurrentWorkspace.ts x: 1 # contributors y: 7 lines of code frontend/src/js/reducers/urlParamsReducer.ts x: 1 # contributors y: 83 lines of code frontend/src/js/types/redux/GiantActions.ts x: 3 # contributors y: 252 lines of code frontend/src/js/types/redux/GiantState.ts x: 1 # contributors y: 75 lines of code backend/app/services/ingestion/IngestionServices.scala x: 4 # contributors y: 111 lines of code postgres/migrate-db/esbuild-runner.config.js x: 2 # contributors y: 6 lines of code postgres/migrate-db/src/migrations/001.undo.create_table_ingestion_events.sql x: 2 # contributors y: 2 lines of code backend/app/AppLoader.scala x: 5 # contributors y: 27 lines of code frontend/src/js/components/PageViewer/PageCache.ts x: 5 # contributors y: 143 lines of code frontend/src/js/components/PageViewer/PageViewer.tsx x: 4 # contributors y: 119 lines of code frontend/src/js/components/PageViewer/VirtualScroll.module.css x: 3 # contributors y: 22 lines of code frontend/src/js/components/PageViewer/VirtualScroll.tsx x: 5 # contributors y: 222 lines of code frontend/src/js/components/PageViewer/model.ts x: 5 # contributors y: 51 lines of code frontend/src/js/components/PageViewer/Controls.module.css x: 4 # contributors y: 15 lines of code frontend/src/js/components/Settings/ExtractionFailuresComponent.tsx x: 2 # contributors y: 97 lines of code frontend/src/js/components/viewer/AddToWorkspaceModal.tsx x: 2 # contributors y: 143 lines of code frontend/src/js/components/viewer/PageViewer/PagePreview.tsx x: 4 # contributors y: 98 lines of code frontend/src/js/components/viewer/TextPreview.tsx x: 2 # contributors y: 86 lines of code frontend/src/stylesheets/base/_dataTable.scss x: 2 # contributors y: 42 lines of code frontend/src/stylesheets/components/_buttons.scss x: 2 # contributors y: 94 lines of code frontend/src/stylesheets/components/_checkbox.scss x: 2 # contributors y: 60 lines of code frontend/src/stylesheets/components/_select-list.scss x: 2 # contributors y: 28 lines of code frontend/src/stylesheets/components/_sidebar.scss x: 2 # contributors y: 116 lines of code backend/app/utils/auth/providers/DatabaseUserProvider.scala x: 2 # contributors y: 101 lines of code backend/app/extraction/MetadataEnrichment.scala x: 2 # contributors y: 79 lines of code backend/app/services/Tika.scala x: 4 # contributors y: 84 lines of code backend/app/services/index/Pages2.scala x: 6 # contributors y: 115 lines of code backend/app/extraction/ocr/TesseractPdfOcrExtractor.scala x: 4 # contributors y: 70 lines of code backend/app/model/Email.scala x: 3 # contributors y: 176 lines of code backend/app/utils/Neo4jHelper.scala x: 2 # contributors y: 269 lines of code backend/app/utils/PDFUtil.scala x: 5 # contributors y: 91 lines of code cli/src/main/scala/com/gu/pfi/cli/DeleteIngestions.scala x: 3 # contributors y: 56 lines of code cli/src/main/scala/com/gu/pfi/cli/ingestion/CliIngestionPipeline.scala x: 2 # contributors y: 127 lines of code cli/src/main/scala/com/gu/pfi/cli/service/CliIngestionService.scala x: 3 # contributors y: 120 lines of code common/src/main/scala/utils/attempt/Attempt.scala x: 2 # contributors y: 135 lines of code backend/app/model/ingestion/OcrMyPdfFlag.scala x: 1 # contributors y: 13 lines of code backend/app/services/previewing/PreviewService.scala x: 2 # contributors y: 137 lines of code frontend/src/js/components/viewer/DocumentMetadata.js x: 3 # contributors y: 125 lines of code cli/src/main/scala/com/gu/pfi/cli/Options.scala x: 2 # contributors y: 147 lines of code frontend/src/js/components/UtilComponents/InputSupper/InlineInput.js x: 1 # contributors y: 123 lines of code backend/app/model/index/Page.scala x: 3 # contributors y: 92 lines of code frontend/src/js/util/stringUtils.ts x: 1 # contributors y: 10 lines of code backend/app/controllers/frontend/App.scala x: 2 # contributors y: 48 lines of code frontend/src/js/components/SearchSidebar/SearchSidebar.js x: 2 # contributors y: 88 lines of code frontend/src/js/reducers/pagesReducer.ts x: 4 # contributors y: 99 lines of code frontend/src/stylesheets/components/_document.scss x: 2 # contributors y: 279 lines of code backend/app/utils/aws/S3Client.scala x: 1 # contributors y: 69 lines of code
1046.0
lines of code
  min: 2.0
  average: 98.14
  25th percentile: 32.25
  median: 69.5
  75th percentile: 119.75
  max: 1046.0
0 14.0
# contributors
min: 1.0 | average: 2.97 | 25th percentile: 2.0 | median: 2.0 | 75th percentile: 4.0 | max: 14.0