guardian / typerighter
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 169 files with 12,487 lines of code.
    • 1 file changed more than 100 times (160 lines of code)
    • 5 files changed 51-100 times (1,865 lines of code)
    • 23 files changed 21-50 times (2,854 lines of code)
    • 66 files changed 6-20 times (4,469 lines of code)
    • 74 files changed 1-5 times (3,139 lines of code)
1% | 14% | 22% | 35% | 25%
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 169 files with 12,487 lines of code.
    • 0 files changed by more than 25 contributors (0 lines of code)
    • 9 files changed by 11-25 contributors (1,423 lines of code)
    • 48 files changed by 6-10 contributors (5,025 lines of code)
    • 91 files changed by 2-5 contributors (4,514 lines of code)
    • 21 files changed by 1 contributor (1,525 lines of code)
0% | 11% | 40% | 36% | 12%
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, tsx, ts, sql, json, md, xml, html, yaml, gitignore, js, svg, css, sbt, java, txt, properties, scss, sh, npmrc, less, cjs, snap
File Change Frequency per Extension
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
sbt95% | 0% | 4% | 0% | 0%
scala0% | 26% | 21% | 39% | 11%
tsx0% | 8% | 21% | 49% | 19%
ts0% | 0% | 56% | 18% | 24%
yaml0% | 0% | 100% | 0% | 0%
html0% | 0% | 0% | 60% | 39%
sql0% | 0% | 0% | 29% | 70%
css0% | 0% | 0% | 47% | 52%
xml0% | 0% | 0% | 0% | 100%
less0% | 0% | 0% | 0% | 100%
js0% | 0% | 0% | 0% | 100%
java0% | 0% | 0% | 0% | 100%
scss0% | 0% | 0% | 0% | 100%
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
ROOT84% | 0% | 15% | 0% | 0%
apps0% | 16% | 22% | 40% | 20%
cdk0% | 0% | 100% | 0% | 0%
project0% | 0% | 34% | 0% | 65%
script0% | 0% | 0% | 0% | 100%
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
160 1 2018-10-30 2025-03-28 114 22 simon@hildrew.net emily@emdash.ie
RulesController.scala
in apps/rule-manager/app/controllers
298 16 2023-03-01 2024-08-06 82 15 ara.cho@guardian.co.uk simon.byford@guardian.co.uk
RuleForm.tsx
in apps/rule-manager/client/src/ts/components
317 - 2023-04-21 2023-10-30 55 12 freddiepreece@outlook.com jonathon.herbert@guardian.c...
AppComponents.scala
in apps/checker/app
124 - 2020-12-09 2023-11-02 53 13 jonathon.herbert@guardian.c... samanthagottlieb31@gmail.com
DbRuleDraft.scala
in apps/rule-manager/app/db
609 21 2023-05-09 2025-03-11 53 10 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
RuleManager.scala
in apps/rule-manager/app/service
517 16 2023-05-10 2024-08-06 51 9 jonathon.herbert@guardian.c... simon.byford@guardian.co.uk
AppComponents.scala
in apps/rule-manager/app
81 - 2020-12-09 2023-10-13 44 13 jonathon.herbert@guardian.c... 34686302+rhystmills@users.n...
index.ts
in cdk/lib
281 1 2021-09-17 2025-02-04 41 14 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
useRule.ts
in apps/rule-manager/client/src/ts/components/hooks
308 1 2023-05-22 2024-11-11 36 10 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
MatcherPool.scala
in apps/checker/app/services
297 19 2020-12-09 2023-10-16 35 10 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
DbRule.scala
in apps/rule-manager/app/db
40 - 2023-03-16 2023-07-17 31 10 ara.cho@guardian.co.uk samantha.gottlieb@guardian....
useRules.ts
in apps/rule-manager/client/src/ts/components/hooks
138 1 2023-04-17 2025-03-11 31 8 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
RuleContent.tsx
in apps/rule-manager/client/src/ts/components
212 - 2023-04-21 2024-11-11 31 10 freddiepreece@outlook.com jonathon.herbert@guardian.c...
Page.tsx
in apps/rule-manager/client/src/ts/components/layout
110 - 2023-03-21 2023-10-13 30 5 jonathon.herbert@guardian.c... 34686302+rhystmills@users.n...
HomeController.scala
in apps/rule-manager/app/controllers
55 3 2020-12-09 2025-03-28 29 12 jonathon.herbert@guardian.c... emily@emdash.ie
Rules.tsx
in apps/rule-manager/client/src/ts/components/pages
260 - 2023-03-21 2025-03-11 29 6 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
30 - 2018-10-30 2025-05-02 26 10 simon@hildrew.net 89925410+waisingyiu@users.n...
index.ts
in apps/rule-manager/client/src/ts/components/icons
84 - 2023-03-30 2023-10-30 26 9 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
plugins.sbt
in project
8 - 2018-10-30 2024-06-26 24 10 simon@hildrew.net rhys.mills@guardian.co.uk
UpdateRuleForm.scala
in apps/rule-manager/app/model
49 - 2023-04-03 2024-11-11 24 9 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
CategorySelector.tsx
in apps/rule-manager/client/src/ts/components
72 - 2023-04-21 2023-10-16 24 10 freddiepreece@outlook.com 34686302+rhystmills@users.n...
CommonConfig.scala
in apps/common-lib/src/main/scala/com/gu/typerighter/lib
70 - 2020-12-11 2025-01-16 23 11 jonathon.herbert@guardian.c... 89925410+waisingyiu@users.n...
TagsSelector.tsx
in apps/rule-manager/client/src/ts/components
41 - 2023-04-21 2023-09-20 22 8 freddiepreece@outlook.com jonathon.herbert@guardian.c...
Header.tsx
in apps/rule-manager/client/src/ts/components/layout
70 - 2023-03-21 2023-09-15 22 6 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
DbRuleLive.scala
in apps/rule-manager/app/db
304 12 2023-05-09 2023-08-15 22 7 jonathon.herbert@guardian.c... samanthagottlieb31@gmail.com
Check.scala
in apps/checker/app/model
42 1 2020-12-09 2023-09-11 21 8 jonathon.herbert@guardian.c... 34686302+rhystmills@users.n...
ApiController.scala
in apps/checker/app/controllers
78 4 2020-12-09 2023-07-25 21 6 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
DictionaryMatcher.scala
in apps/checker/app/matchers
81 3 2023-08-14 2023-11-02 21 5 rhys.mills@guardian.co.uk samanthagottlieb31@gmail.com
RuleTesting.scala
in apps/rule-manager/app/service
143 2 2023-06-19 2023-10-30 21 6 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
SentenceHelpers.scala
in apps/checker/app/services
52 2 2020-12-09 2023-10-13 20 7 jonathon.herbert@guardian.c... simon.byford@guardian.co.uk
LanguageToolMatcher.scala
in apps/checker/app/matchers
174 9 2020-12-09 2025-02-04 20 7 jonathon.herbert@guardian.c... 34686302+rhystmills@users.n...
RulesController.scala
in apps/checker/app/controllers
23 - 2020-12-09 2023-07-25 19 6 jonathon.herbert@guardian.c... 34686302+rhystmills@users.n...
CreateRuleForm.scala
in apps/rule-manager/app/model
54 - 2023-04-05 2024-11-11 19 7 rhystmills@gmail.com jonathon.herbert@guardian.c...
featureSwitches.tsx
in apps/rule-manager/client/src/ts/components/context
90 1 2023-05-04 2023-08-31 19 5 jonathon.herbert@guardian.c... rhys.mills@guardian.co.uk
CheckerConfig.scala
in apps/checker/app/utils
22 - 2020-12-11 2023-11-02 18 9 jonathon.herbert@guardian.c... samanthagottlieb31@gmail.com
CapiProxyController.scala
in apps/checker/app/controllers
35 3 2020-12-09 2023-08-15 18 9 jonathon.herbert@guardian.c... samanthagottlieb31@gmail.com
HomeController.scala
in apps/checker/app/controllers
37 2 2020-12-09 2025-03-28 18 11 jonathon.herbert@guardian.c... emily@emdash.ie
BucketRuleResource.scala
in apps/common-lib/src/main/scala/com/gu/typerighter/rules
98 4 2023-05-10 2023-10-18 17 4 jonathon.herbert@guardian.c... 34686302+rhystmills@users.n...
AppLoader.scala
in apps/rule-manager/app
19 1 2020-12-09 2023-04-26 16 6 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
RuleStatus.tsx
in apps/rule-manager/client/src/ts/components
73 - 2023-07-04 2023-09-11 16 7 freddiepreece@outlook.com jonathon.herbert@guardian.c...
index.tsx
in apps/rule-manager/client/src/ts
11 - 2023-03-21 2023-09-15 15 7 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
constants.ts
in apps/rule-manager/client/src/ts/constants
52 - 2023-03-21 2023-10-16 15 7 jonathon.herbert@guardian.c... 34686302+rhystmills@users.n...
RuleMatch.scala
in apps/common-lib/src/main/scala/com/gu/typerighter/model
75 3 2023-03-01 2023-10-16 15 8 ara.cho@guardian.co.uk 34686302+rhystmills@users.n...
MatcherProvisionerService.scala
in apps/checker/app/services
91 6 2023-06-17 2023-10-18 15 6 jonathon.herbert@guardian.c... 34686302+rhystmills@users.n...
TagsTable.tsx
in apps/rule-manager/client/src/ts/components
408 - 2023-07-06 2023-09-20 15 5 rhys.mills@guardian.co.uk jonathon.herbert@guardian.c...
RuleManagerConfig.scala
in apps/rule-manager/app/utils
21 - 2020-12-11 2023-07-25 14 6 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
rules.scala.html
in apps/checker/app/views
41 - 2020-12-09 2023-09-04 13 7 jonathon.herbert@guardian.c... 34686302+rhystmills@users.n...
RegexMatcher.scala
in apps/checker/app/matchers
53 4 2020-12-09 2023-07-25 13 5 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
TagsController.scala
in apps/rule-manager/app/controllers
89 3 2023-06-13 2023-07-25 13 3 rhys.mills@guardian.co.uk 34686302+rhystmills@users.n...
PaginatedRulesTable.tsx
in apps/rule-manager/client/src/ts/components/table
395 4 2023-09-06 2024-11-11 13 4 jonathon.herbert@guardian.c... jonathon.herbert@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
160 1 2018-10-30 2025-03-28 114 22 simon@hildrew.net emily@emdash.ie
RulesController.scala
in apps/rule-manager/app/controllers
298 16 2023-03-01 2024-08-06 82 15 ara.cho@guardian.co.uk simon.byford@guardian.co.uk
index.ts
in cdk/lib
281 1 2021-09-17 2025-02-04 41 14 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
AppComponents.scala
in apps/checker/app
124 - 2020-12-09 2023-11-02 53 13 jonathon.herbert@guardian.c... samanthagottlieb31@gmail.com
AppComponents.scala
in apps/rule-manager/app
81 - 2020-12-09 2023-10-13 44 13 jonathon.herbert@guardian.c... 34686302+rhystmills@users.n...
RuleForm.tsx
in apps/rule-manager/client/src/ts/components
317 - 2023-04-21 2023-10-30 55 12 freddiepreece@outlook.com jonathon.herbert@guardian.c...
HomeController.scala
in apps/rule-manager/app/controllers
55 3 2020-12-09 2025-03-28 29 12 jonathon.herbert@guardian.c... emily@emdash.ie
CommonConfig.scala
in apps/common-lib/src/main/scala/com/gu/typerighter/lib
70 - 2020-12-11 2025-01-16 23 11 jonathon.herbert@guardian.c... 89925410+waisingyiu@users.n...
HomeController.scala
in apps/checker/app/controllers
37 2 2020-12-09 2025-03-28 18 11 jonathon.herbert@guardian.c... emily@emdash.ie
DbRuleDraft.scala
in apps/rule-manager/app/db
609 21 2023-05-09 2025-03-11 53 10 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
useRule.ts
in apps/rule-manager/client/src/ts/components/hooks
308 1 2023-05-22 2024-11-11 36 10 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
MatcherPool.scala
in apps/checker/app/services
297 19 2020-12-09 2023-10-16 35 10 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
RuleContent.tsx
in apps/rule-manager/client/src/ts/components
212 - 2023-04-21 2024-11-11 31 10 freddiepreece@outlook.com jonathon.herbert@guardian.c...
DbRule.scala
in apps/rule-manager/app/db
40 - 2023-03-16 2023-07-17 31 10 ara.cho@guardian.co.uk samantha.gottlieb@guardian....
30 - 2018-10-30 2025-05-02 26 10 simon@hildrew.net 89925410+waisingyiu@users.n...
plugins.sbt
in project
8 - 2018-10-30 2024-06-26 24 10 simon@hildrew.net rhys.mills@guardian.co.uk
CategorySelector.tsx
in apps/rule-manager/client/src/ts/components
72 - 2023-04-21 2023-10-16 24 10 freddiepreece@outlook.com 34686302+rhystmills@users.n...
RuleManager.scala
in apps/rule-manager/app/service
517 16 2023-05-10 2024-08-06 51 9 jonathon.herbert@guardian.c... simon.byford@guardian.co.uk
index.ts
in apps/rule-manager/client/src/ts/components/icons
84 - 2023-03-30 2023-10-30 26 9 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
UpdateRuleForm.scala
in apps/rule-manager/app/model
49 - 2023-04-03 2024-11-11 24 9 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
CheckerConfig.scala
in apps/checker/app/utils
22 - 2020-12-11 2023-11-02 18 9 jonathon.herbert@guardian.c... samanthagottlieb31@gmail.com
CapiProxyController.scala
in apps/checker/app/controllers
35 3 2020-12-09 2023-08-15 18 9 jonathon.herbert@guardian.c... samanthagottlieb31@gmail.com
useRules.ts
in apps/rule-manager/client/src/ts/components/hooks
138 1 2023-04-17 2025-03-11 31 8 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
TagsSelector.tsx
in apps/rule-manager/client/src/ts/components
41 - 2023-04-21 2023-09-20 22 8 freddiepreece@outlook.com jonathon.herbert@guardian.c...
Check.scala
in apps/checker/app/model
42 1 2020-12-09 2023-09-11 21 8 jonathon.herbert@guardian.c... 34686302+rhystmills@users.n...
RuleMatch.scala
in apps/common-lib/src/main/scala/com/gu/typerighter/model
75 3 2023-03-01 2023-10-16 15 8 ara.cho@guardian.co.uk 34686302+rhystmills@users.n...
TextBlock.scala
in apps/common-lib/src/main/scala/com/gu/typerighter/model
67 2 2023-03-01 2023-08-15 11 8 ara.cho@guardian.co.uk samanthagottlieb31@gmail.com
RuleFormSection.tsx
in apps/rule-manager/client/src/ts/components
33 - 2023-04-21 2023-10-30 11 8 freddiepreece@outlook.com jonathon.herbert@guardian.c...
DbRuleLive.scala
in apps/rule-manager/app/db
304 12 2023-05-09 2023-08-15 22 7 jonathon.herbert@guardian.c... samanthagottlieb31@gmail.com
SentenceHelpers.scala
in apps/checker/app/services
52 2 2020-12-09 2023-10-13 20 7 jonathon.herbert@guardian.c... simon.byford@guardian.co.uk
LanguageToolMatcher.scala
in apps/checker/app/matchers
174 9 2020-12-09 2025-02-04 20 7 jonathon.herbert@guardian.c... 34686302+rhystmills@users.n...
CreateRuleForm.scala
in apps/rule-manager/app/model
54 - 2023-04-05 2024-11-11 19 7 rhystmills@gmail.com jonathon.herbert@guardian.c...
RuleStatus.tsx
in apps/rule-manager/client/src/ts/components
73 - 2023-07-04 2023-09-11 16 7 freddiepreece@outlook.com jonathon.herbert@guardian.c...
constants.ts
in apps/rule-manager/client/src/ts/constants
52 - 2023-03-21 2023-10-16 15 7 jonathon.herbert@guardian.c... 34686302+rhystmills@users.n...
index.tsx
in apps/rule-manager/client/src/ts
11 - 2023-03-21 2023-09-15 15 7 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
rules.scala.html
in apps/checker/app/views
41 - 2020-12-09 2023-09-04 13 7 jonathon.herbert@guardian.c... 34686302+rhystmills@users.n...
Permissions.scala
in apps/rule-manager/app/utils
53 2 2020-12-11 2023-05-19 9 7 jonathon.herbert@guardian.c... 34686302+rhystmills@users.n...
Rules.tsx
in apps/rule-manager/client/src/ts/components/pages
260 - 2023-03-21 2025-03-11 29 6 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
Header.tsx
in apps/rule-manager/client/src/ts/components/layout
70 - 2023-03-21 2023-09-15 22 6 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
RuleTesting.scala
in apps/rule-manager/app/service
143 2 2023-06-19 2023-10-30 21 6 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
ApiController.scala
in apps/checker/app/controllers
78 4 2020-12-09 2023-07-25 21 6 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
RulesController.scala
in apps/checker/app/controllers
23 - 2020-12-09 2023-07-25 19 6 jonathon.herbert@guardian.c... 34686302+rhystmills@users.n...
AppLoader.scala
in apps/rule-manager/app
19 1 2020-12-09 2023-04-26 16 6 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
MatcherProvisionerService.scala
in apps/checker/app/services
91 6 2023-06-17 2023-10-18 15 6 jonathon.herbert@guardian.c... 34686302+rhystmills@users.n...
RuleManagerConfig.scala
in apps/rule-manager/app/utils
21 - 2020-12-11 2023-07-25 14 6 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
Suggestion.scala
in apps/common-lib/src/main/scala/com/gu/typerighter/model
31 1 2023-03-01 2023-08-15 11 6 ara.cho@guardian.co.uk samanthagottlieb31@gmail.com
RuleFormBatchEdit.tsx
in apps/rule-manager/client/src/ts/components
133 - 2023-07-04 2023-10-16 10 6 jonathon.herbert@guardian.c... 34686302+rhystmills@users.n...
Diff.tsx
in apps/rule-manager/client/src/ts/components
342 - 2023-07-21 2023-09-20 9 6 rhys.mills@guardian.co.uk jonathon.herbert@guardian.c...
Reason.tsx
in apps/rule-manager/client/src/ts/components/modals
64 - 2023-06-21 2023-08-23 9 6 jonathon.herbert@guardian.c... 7883129+samanthagottlieb@us...
MatcherResponse.scala
in apps/checker/app/model
20 - 2020-12-09 2023-08-15 9 6 jonathon.herbert@guardian.c... samanthagottlieb31@gmail.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
example-rules-new.xml
in script/js/fixtures
604 - 2022-01-07 2022-01-07 1 1 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
main.less
in apps/checker/app/assets/stylesheets
351 - 2020-12-09 2020-12-10 2 1 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
tags.tsx
in apps/rule-manager/client/src/ts/components/context
161 - 2023-09-11 2023-09-20 3 1 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
dump-db.ts
in script/js
97 2 2025-01-27 2025-03-18 2 1 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
example-rules-old.xml
in script/js/fixtures
75 - 2022-01-07 2022-01-07 1 1 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
ConciseRuleStatus.tsx
in apps/rule-manager/client/src/ts/components/rule
39 - 2023-09-04 2023-09-11 2 1 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
main.scala.html
in apps/checker/app/views
29 - 2020-12-09 2023-09-25 4 1 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
FullHeightContentWithFixedHeader.tsx
in apps/rule-manager/client/src/ts/components/layout
28 - 2023-09-12 2023-09-15 2 1 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
6.sql
in apps/rule-manager/conf/evolutions/default
23 - 2023-05-10 2023-05-11 2 1 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
LocalStack.scala
in apps/rule-manager/app/utils
21 - 2023-05-10 2023-05-22 2 1 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
FormHelpers.scala
in apps/rule-manager/app/utils
18 1 2023-05-11 2023-05-22 3 1 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
breadcrumbs.scala.html
in apps/checker/app/views
14 - 2020-12-09 2020-12-10 2 1 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
PaginatedResponse.scala
in apps/rule-manager/app/model
13 - 2023-08-14 2023-09-11 3 1 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
17.sql
in apps/rule-manager/conf/evolutions/default
12 - 2025-03-06 2025-03-11 3 1 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
14.sql
in apps/rule-manager/conf/evolutions/default
10 - 2023-08-18 2023-09-11 3 1 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
PublishRuleForm.scala
in apps/rule-manager/app/model
10 - 2023-05-10 2023-05-22 3 1 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
StringHelpers.scala
in apps/rule-manager/app/utils
9 1 2024-11-05 2024-11-11 2 1 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
2.sql
in apps/rule-manager/conf/evolutions/default
4 - 2023-03-27 2023-03-29 2 1 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
index.scala.html
in apps/checker/app/views
3 - 2020-12-09 2020-12-10 2 1 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
16.sql
in apps/rule-manager/conf/evolutions/default
2 - 2024-11-05 2024-11-11 2 1 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
15.sql
in apps/rule-manager/conf/evolutions/default
2 - 2023-09-13 2023-09-25 2 1 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
TestRule.tsx
in apps/rule-manager/client/src/ts/components/pages
208 - 2023-10-08 2023-10-30 4 2 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
DictionaryBuilder.scala
in apps/checker/app/services/collins
177 6 2023-08-17 2023-08-31 2 2 rhys.mills@guardian.co.uk 34686302+rhystmills@users.n...
TyperighterChunkedAdapter.ts
in apps/rule-manager/client/src/ts/utils
145 - 2023-10-08 2023-10-30 3 2 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
SpellDictionaryBuilder.scala
in apps/checker/app/services/collins
75 3 2023-08-17 2023-08-31 2 2 rhys.mills@guardian.co.uk 34686302+rhystmills@users.n...
69 - 2021-04-29 2024-12-06 4 2 jonathon.herbert@guardian.c... david.furey@guardian.co.uk
Revert.tsx
in apps/rule-manager/client/src/ts/components/modals
58 - 2023-08-16 2023-08-23 3 2 samanthagottlieb31@gmail.com 7883129+samanthagottlieb@us...
jsonSeq.ts
in apps/rule-manager/client/src/ts/utils
39 - 2023-10-08 2023-10-30 2 2 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
MorfologikCollinsSpellerRule.java
in apps/checker/app/services/collins
32 4 2023-08-17 2023-09-06 4 2 rhys.mills@guardian.co.uk 34686302+rhystmills@users.n...
PandaAuthController.scala
in apps/common-lib/src/main/scala/com/gu/typerighter/controllers
31 1 2023-06-18 2023-09-20 7 2 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
CheckSingleRule.scala
in apps/common-lib/src/main/scala/com/gu/typerighter/model
29 1 2023-06-19 2023-07-25 2 2 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
CollinsEnglish.java
in apps/checker/app/services/collins
26 2 2023-08-17 2023-08-31 2 2 rhys.mills@guardian.co.uk 34686302+rhystmills@users.n...
DB.scala
in apps/rule-manager/app/db
17 1 2023-03-16 2023-06-12 7 2 ara.cho@guardian.co.uk jonathon.herbert@guardian.c...
15 1 2023-07-14 2023-07-17 2 2 freddiepreece@outlook.com 40991816+fweddi@users.norep...
HMACClient.scala
in apps/common-lib/src/main/scala/com/gu/typerighter/lib
15 1 2023-06-19 2023-07-25 2 2 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
TaggedWordlist.scala
in apps/common-lib/src/main/scala/com/gu/typerighter/model
14 - 2023-09-14 2023-09-15 2 2 rhys.mills@guardian.co.uk 34686302+rhystmills@users.n...
errors.ts
in apps/rule-manager/client/src/ts/components/helpers
14 - 2023-08-11 2023-08-15 2 2 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
MatcherError.scala
in apps/checker/app/model
14 - 2020-12-09 2023-08-15 4 2 jonathon.herbert@guardian.c... samanthagottlieb31@gmail.com
3.sql
in apps/rule-manager/conf/evolutions/default
13 - 2023-04-17 2023-04-25 5 2 jonathon.herbert@guardian.c... ara.cho@guardian.co.uk
CreateTagForm.scala
in apps/rule-manager/app/model
13 - 2023-06-13 2023-06-20 2 2 rhys.mills@guardian.co.uk 34686302+rhystmills@users.n...
9.sql
in apps/rule-manager/conf/evolutions/default
12 - 2023-06-13 2023-06-13 1 2 34686302+rhystmills@users.n... rhys.mills@guardian.co.uk
12.sql
in apps/rule-manager/conf/evolutions/default
8 - 2023-07-10 2023-07-17 3 2 samanthagottlieb31@gmail.com samanthagottlieb31@gmail.com
CheckerRuleResource.scala
in apps/common-lib/src/main/scala/com/gu/typerighter/model
7 - 2023-05-02 2023-05-09 2 2 47318984+aracho1@users.nore... jonathon.herbert@guardian.c...
Title.tsx
in apps/rule-manager/client/src/ts/components/form
6 - 2023-10-08 2023-10-30 3 2 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
Loggable.scala
in apps/common-lib/src/main/scala/com/gu/typerighter/lib
5 - 2020-12-09 2020-12-16 3 2 jonathon.herbert@guardian.c... samhession@live.co.uk
8.sql
in apps/rule-manager/conf/evolutions/default
5 - 2023-06-12 2023-06-13 2 2 rhys.mills@guardian.co.uk rhys.mills@guardian.co.uk
SectionHeader.tsx
in apps/rule-manager/client/src/ts/components/form
5 - 2023-10-08 2023-10-30 3 2 jonathon.herbert@guardian.c... jonathon.herbert@guardian.c...
Errors.scala
in apps/rule-manager/app/utils
3 - 2023-06-16 2023-06-20 2 2 rhys.mills@guardian.co.uk 34686302+rhystmills@users.n...
4.sql
in apps/rule-manager/conf/evolutions/default
2 - 2023-04-20 2023-04-25 3 2 jonathon.herbert@guardian.c... ara.cho@guardian.co.uk
10.sql
in apps/rule-manager/conf/evolutions/default
2 - 2023-06-20 2023-06-21 2 2 freddiepreece@outlook.com 40991816+fweddi@users.norep...
Correlations

File Size vs. Number of Changes: 169 points

riff-raff.yaml x: 30 lines of code y: 26 # changes apps/checker/app/controllers/HomeController.scala x: 37 lines of code y: 18 # changes apps/rule-manager/app/controllers/HomeController.scala x: 55 lines of code y: 29 # changes build.sbt x: 160 lines of code y: 114 # changes script/js/dump-db.ts x: 97 lines of code y: 2 # changes apps/rule-manager/app/db/DbRuleDraft.scala x: 609 lines of code y: 53 # changes apps/rule-manager/client/src/ts/components/hooks/useRules.ts x: 138 lines of code y: 31 # changes apps/rule-manager/client/src/ts/components/pages/Rules.tsx x: 260 lines of code y: 29 # changes apps/rule-manager/conf/evolutions/default/17.sql x: 12 lines of code y: 3 # changes apps/rule-manager/client/vite.config.ts x: 46 lines of code y: 7 # changes cdk/lib/index.ts x: 281 lines of code y: 41 # changes apps/checker/app/matchers/LanguageToolMatcher.scala x: 174 lines of code y: 20 # changes apps/common-lib/src/main/scala/com/gu/typerighter/lib/CommonConfig.scala x: 70 lines of code y: 23 # changes script/js/compare-rule-xml.js x: 69 lines of code y: 4 # changes apps/rule-manager/app/model/CreateRuleForm.scala x: 54 lines of code y: 19 # changes apps/rule-manager/app/model/UpdateRuleForm.scala x: 49 lines of code y: 24 # changes apps/rule-manager/app/utils/StringHelpers.scala x: 9 lines of code y: 2 # changes apps/rule-manager/client/src/ts/components/RuleContent.tsx x: 212 lines of code y: 31 # changes apps/rule-manager/client/src/ts/components/hooks/useRule.ts x: 308 lines of code y: 36 # changes apps/rule-manager/client/src/ts/components/table/PaginatedRulesTable.tsx x: 395 lines of code y: 13 # changes apps/rule-manager/conf/evolutions/default/16.sql x: 2 lines of code y: 2 # changes apps/rule-manager/app/controllers/RulesController.scala x: 298 lines of code y: 82 # changes apps/rule-manager/app/service/RuleManager.scala x: 517 lines of code y: 51 # changes project/plugins.sbt x: 8 lines of code y: 24 # changes apps/checker/app/AppComponents.scala x: 124 lines of code y: 53 # changes apps/checker/app/matchers/DictionaryMatcher.scala x: 81 lines of code y: 21 # changes apps/checker/app/services/EntityHelper.scala x: 63 lines of code y: 10 # changes apps/checker/app/utils/CheckerConfig.scala x: 22 lines of code y: 18 # changes apps/common-lib/src/main/scala/com/gu/typerighter/lib/ContentClient.scala x: 32 lines of code y: 8 # changes apps/rule-manager/app/service/RuleTesting.scala x: 143 lines of code y: 21 # changes apps/rule-manager/client/src/ts/components/RuleForm.tsx x: 317 lines of code y: 55 # changes apps/rule-manager/client/src/ts/components/RuleFormSection.tsx x: 33 lines of code y: 11 # changes apps/rule-manager/client/src/ts/components/form/SectionHeader.tsx x: 5 lines of code y: 3 # changes apps/rule-manager/client/src/ts/components/form/Title.tsx x: 6 lines of code y: 3 # changes apps/rule-manager/client/src/ts/components/icons/index.ts x: 84 lines of code y: 26 # changes apps/rule-manager/client/src/ts/components/pages/Rule.tsx x: 33 lines of code y: 7 # changes apps/rule-manager/client/src/ts/components/pages/TestRule.tsx x: 208 lines of code y: 4 # changes apps/rule-manager/client/src/ts/utils/TyperighterChunkedAdapter.ts x: 145 lines of code y: 3 # changes apps/rule-manager/client/src/ts/utils/jsonSeq.ts x: 39 lines of code y: 2 # changes apps/common-lib/src/main/scala/com/gu/typerighter/lib/JsonHelpers.scala x: 16 lines of code y: 6 # changes apps/common-lib/src/main/scala/com/gu/typerighter/rules/BucketRuleResource.scala x: 98 lines of code y: 17 # changes apps/checker/app/services/MatcherProvisionerService.scala x: 91 lines of code y: 15 # changes apps/checker/app/services/MatcherPool.scala x: 297 lines of code y: 35 # changes apps/common-lib/src/main/scala/com/gu/typerighter/model/CheckerRule.scala x: 180 lines of code y: 10 # changes apps/common-lib/src/main/scala/com/gu/typerighter/model/RuleMatch.scala x: 75 lines of code y: 15 # changes apps/rule-manager/client/src/ts/components/CategorySelector.tsx x: 72 lines of code y: 24 # changes apps/rule-manager/client/src/ts/components/RuleFormBatchEdit.tsx x: 133 lines of code y: 10 # changes apps/rule-manager/client/src/ts/constants/constants.ts x: 52 lines of code y: 15 # changes apps/checker/app/services/SentenceHelpers.scala x: 52 lines of code y: 20 # changes apps/rule-manager/app/AppComponents.scala x: 81 lines of code y: 44 # changes apps/rule-manager/app/service/DictionaryResource.scala x: 49 lines of code y: 3 # changes apps/rule-manager/app/utils/Dictionary.scala x: 95 lines of code y: 3 # changes apps/rule-manager/client/src/ts/components/layout/Breadcrumbs.tsx x: 14 lines of code y: 5 # changes apps/rule-manager/client/src/ts/components/layout/Page.tsx x: 110 lines of code y: 30 # changes apps/common-lib/src/main/scala/com/gu/typerighter/model/Category.scala x: 14 lines of code y: 7 # changes apps/checker/app/views/main.scala.html x: 29 lines of code y: 4 # changes apps/common-lib/src/main/scala/com/gu/typerighter/fixtures/RuleMatchFixtures.scala x: 20 lines of code y: 7 # changes apps/rule-manager/client/src/ts/components/Diff.tsx x: 342 lines of code y: 9 # changes apps/rule-manager/client/src/ts/components/TagsSelector.tsx x: 41 lines of code y: 22 # changes apps/rule-manager/client/src/ts/components/TagsTable.tsx x: 408 lines of code y: 15 # changes apps/rule-manager/client/src/ts/components/context/tags.tsx x: 161 lines of code y: 3 # changes apps/common-lib/src/main/scala/com/gu/typerighter/controllers/PandaAuthController.scala x: 31 lines of code y: 7 # changes apps/common-lib/src/main/scala/com/gu/typerighter/model/TaggedWordlist.scala x: 14 lines of code y: 2 # changes apps/rule-manager/client/src/ts/components/PageNotFound.tsx x: 60 lines of code y: 7 # changes apps/rule-manager/client/src/ts/components/layout/FullHeightContentWithFixedHeader.tsx x: 28 lines of code y: 2 # changes apps/rule-manager/client/src/ts/components/layout/Header.tsx x: 70 lines of code y: 22 # changes apps/rule-manager/client/src/ts/index.tsx x: 11 lines of code y: 15 # changes apps/rule-manager/app/model/PaginatedResponse.scala x: 13 lines of code y: 3 # changes apps/rule-manager/client/src/css/theme.scss x: 8 lines of code y: 5 # changes apps/rule-manager/client/src/ts/components/RuleStatus.tsx x: 73 lines of code y: 16 # changes apps/rule-manager/conf/evolutions/default/14.sql x: 10 lines of code y: 3 # changes apps/checker/app/model/Check.scala x: 42 lines of code y: 21 # changes apps/checker/app/services/collins/MorfologikCollinsSpellerRule.java x: 32 lines of code y: 4 # changes apps/checker/app/views/rules.scala.html x: 41 lines of code y: 13 # changes apps/rule-manager/client/src/ts/components/context/featureSwitches.tsx x: 90 lines of code y: 19 # changes apps/checker/app/services/collins/CollinsEnglish.java x: 26 lines of code y: 2 # changes apps/checker/app/services/collins/DictionaryBuilder.scala x: 177 lines of code y: 2 # changes apps/checker/app/services/collins/SpellDictionaryBuilder.scala x: 75 lines of code y: 2 # changes apps/rule-manager/client/src/ts/components/modals/Reason.tsx x: 64 lines of code y: 9 # changes apps/rule-manager/client/src/ts/components/modals/Revert.tsx x: 58 lines of code y: 3 # changes apps/checker/app/controllers/CapiProxyController.scala x: 35 lines of code y: 18 # changes apps/checker/app/model/MatcherError.scala x: 14 lines of code y: 4 # changes apps/checker/app/model/MatcherResponse.scala x: 20 lines of code y: 9 # changes apps/checker/app/model/MatcherWorkComplete.scala x: 12 lines of code y: 6 # changes apps/common-lib/src/main/scala/com/gu/typerighter/lib/SafeXMLParser.scala x: 16 lines of code y: 3 # changes apps/common-lib/src/main/scala/com/gu/typerighter/model/Document.scala x: 17 lines of code y: 7 # changes apps/common-lib/src/main/scala/com/gu/typerighter/model/Suggestion.scala x: 31 lines of code y: 11 # changes apps/common-lib/src/main/scala/com/gu/typerighter/model/TextBlock.scala x: 67 lines of code y: 11 # changes apps/common-lib/src/main/scala/com/gu/typerighter/model/TextRange.scala x: 40 lines of code y: 7 # changes apps/rule-manager/app/db/DbRuleLive.scala x: 304 lines of code y: 22 # changes apps/rule-manager/app/db/RuleTagLive.scala x: 132 lines of code y: 12 # changes apps/rule-manager/app/model/CheckerRuleForm.scala x: 105 lines of code y: 6 # changes apps/rule-manager/conf/evolutions/default/13.sql x: 10 lines of code y: 5 # changes apps/rule-manager/app/db/RuleTagDraft.scala x: 107 lines of code y: 12 # changes apps/checker/app/controllers/ApiController.scala x: 78 lines of code y: 21 # changes apps/checker/app/controllers/RulesController.scala x: 23 lines of code y: 19 # changes apps/checker/app/matchers/RegexMatcher.scala x: 53 lines of code y: 13 # changes apps/common-lib/src/main/scala/com/gu/typerighter/lib/HMACClient.scala x: 15 lines of code y: 2 # changes apps/common-lib/src/main/scala/com/gu/typerighter/model/CheckSingleRule.scala x: 29 lines of code y: 2 # changes apps/rule-manager/app/controllers/TagsController.scala x: 89 lines of code y: 13 # changes apps/rule-manager/app/utils/RuleManagerConfig.scala x: 21 lines of code y: 14 # changes apps/rule-manager/client/src/css/typography.css x: 35 lines of code y: 3 # changes apps/rule-manager/client/src/ts/components/FeatureSwitches.tsx x: 40 lines of code y: 4 # changes apps/rule-manager/client/src/ts/components/Label.tsx x: 17 lines of code y: 4 # changes apps/rule-manager/client/src/ts/components/RuleDataLastUpdated.tsx x: 37 lines of code y: 3 # changes apps/rule-manager/client/src/ts/components/RuleHistory.tsx x: 93 lines of code y: 8 # changes apps/rule-manager/client/src/ts/components/hooks/useBatchRules.ts x: 90 lines of code y: 6 # changes apps/rule-manager/client/src/ts/components/hooks/useDebounce.ts x: 9 lines of code y: 3 # changes apps/rule-manager/client/src/ts/components/icons/downChevron.tsx x: 16 lines of code y: 4 # changes apps/rule-manager/client/src/ts/components/icons/search.tsx x: 24 lines of code y: 5 # changes apps/rule-manager/client/src/ts/components/layout/Logo.tsx x: 20 lines of code y: 3 # changes apps/rule-manager/client/src/ts/components/layout/ProfileMenu.tsx x: 23 lines of code y: 4 # changes apps/rule-manager/client/src/ts/constants/euiTheme.ts x: 12 lines of code y: 5 # changes apps/rule-manager/client/src/ts/utils/api.ts x: 42 lines of code y: 9 # changes apps/rule-manager/client/src/ts/utils/date.ts x: 2 lines of code y: 3 # changes apps/rule-manager/client/src/ts/utils/error.ts x: 6 lines of code y: 6 # changes apps/rule-manager/client/src/ts/utils/rule.ts x: 31 lines of code y: 8 # changes apps/rule-manager/client/src/ts/utils/window.tsx x: 24 lines of code y: 7 # changes apps/rule-manager/app/db/Tags.scala x: 155 lines of code y: 9 # changes apps/rule-manager/app/db/DbRule.scala x: 40 lines of code y: 31 # changes apps/rule-manager/app/service/SheetsRuleResource.scala x: 149 lines of code y: 10 # changes apps/rule-manager/conf/evolutions/default/12.sql x: 8 lines of code y: 3 # changes apps/rule-manager/app/model/BatchUpdateRuleForm.scala x: 16 lines of code y: 5 # changes apps/rule-manager/conf/evolutions/default/11.sql x: 26 lines of code y: 6 # changes apps/rule-manager/app/utils/Errors.scala x: 3 lines of code y: 2 # changes apps/rule-manager/app/model/CreateTagForm.scala x: 13 lines of code y: 2 # changes apps/rule-manager/conf/evolutions/default/9.sql x: 12 lines of code y: 1 # changes apps/rule-manager/conf/evolutions/default/8.sql x: 5 lines of code y: 2 # changes apps/rule-manager/app/utils/FormHelpers.scala x: 18 lines of code y: 3 # changes apps/rule-manager/app/utils/LocalStack.scala x: 21 lines of code y: 2 # changes apps/rule-manager/app/utils/Permissions.scala x: 53 lines of code y: 9 # changes apps/rule-manager/app/views/index.scala.html x: 30 lines of code y: 11 # changes apps/rule-manager/conf/evolutions/default/6.sql x: 23 lines of code y: 2 # changes apps/checker/app/utils/Matcher.scala x: 17 lines of code y: 8 # changes apps/common-lib/src/main/scala/com/gu/typerighter/model/CheckerRuleResource.scala x: 7 lines of code y: 2 # changes apps/common-lib/src/main/scala/com/gu/typerighter/model/PatternToken.scala x: 27 lines of code y: 7 # changes apps/common-lib/src/main/scala/com/gu/typerighter/model/Text.scala x: 12 lines of code y: 7 # changes apps/rule-manager/app/AppLoader.scala x: 19 lines of code y: 16 # changes apps/rule-manager/conf/evolutions/default/3.sql x: 13 lines of code y: 5 # changes apps/checker/conf/logback.xml x: 28 lines of code y: 3 # changes apps/rule-manager/conf/evolutions/default/1.sql x: 15 lines of code y: 7 # changes apps/rule-manager/conf/evolutions/default/2.sql x: 4 lines of code y: 2 # changes apps/checker/app/AppLoader.scala x: 20 lines of code y: 12 # changes apps/checker/app/utils/CloudWatchClient.scala x: 34 lines of code y: 6 # changes apps/checker/app/utils/Timer.scala x: 59 lines of code y: 6 # changes apps/common-lib/src/main/scala/com/gu/typerighter/lib/AppSetup.scala x: 47 lines of code y: 4 # changes script/js/fixtures/example-rules-new.xml x: 604 lines of code y: 1 # changes script/js/fixtures/example-rules-old.xml x: 75 lines of code y: 1 # changes apps/checker/app/assets/stylesheets/main.less x: 351 lines of code y: 2 # changes
114.0
# changes
  min: 1.0
  average: 11.63
  25th percentile: 3.0
  median: 7.0
  75th percentile: 15.0
  max: 114.0
0 609.0
lines of code
min: 2.0 | average: 73.89 | 25th percentile: 14.0 | median: 32.0 | 75th percentile: 81.0 | max: 609.0

Number of Contributors vs. Number of Changes: 169 points

riff-raff.yaml x: 10 # contributors y: 26 # changes apps/checker/app/controllers/HomeController.scala x: 11 # contributors y: 18 # changes apps/rule-manager/app/controllers/HomeController.scala x: 12 # contributors y: 29 # changes build.sbt x: 22 # contributors y: 114 # changes script/js/dump-db.ts x: 1 # contributors y: 2 # changes apps/rule-manager/app/db/DbRuleDraft.scala x: 10 # contributors y: 53 # changes apps/rule-manager/client/src/ts/components/hooks/useRules.ts x: 8 # contributors y: 31 # changes apps/rule-manager/client/src/ts/components/pages/Rules.tsx x: 6 # contributors y: 29 # changes apps/rule-manager/conf/evolutions/default/17.sql x: 1 # contributors y: 3 # changes apps/rule-manager/client/vite.config.ts x: 4 # contributors y: 7 # changes cdk/lib/index.ts x: 14 # contributors y: 41 # changes apps/checker/app/matchers/LanguageToolMatcher.scala x: 7 # contributors y: 20 # changes apps/common-lib/src/main/scala/com/gu/typerighter/lib/CommonConfig.scala x: 11 # contributors y: 23 # changes script/js/compare-rule-xml.js x: 2 # contributors y: 4 # changes apps/rule-manager/app/model/CreateRuleForm.scala x: 7 # contributors y: 19 # changes apps/rule-manager/app/model/UpdateRuleForm.scala x: 9 # contributors y: 24 # changes apps/rule-manager/client/src/ts/components/RuleContent.tsx x: 10 # contributors y: 31 # changes apps/rule-manager/client/src/ts/components/hooks/useRule.ts x: 10 # contributors y: 36 # changes apps/rule-manager/client/src/ts/components/table/PaginatedRulesTable.tsx x: 4 # contributors y: 13 # changes apps/rule-manager/app/controllers/RulesController.scala x: 15 # contributors y: 82 # changes apps/rule-manager/app/service/RuleManager.scala x: 9 # contributors y: 51 # changes project/plugins.sbt x: 10 # contributors y: 24 # changes apps/checker/app/AppComponents.scala x: 13 # contributors y: 53 # changes apps/checker/app/matchers/DictionaryMatcher.scala x: 5 # contributors y: 21 # changes apps/checker/app/services/EntityHelper.scala x: 4 # contributors y: 10 # changes apps/checker/app/utils/CheckerConfig.scala x: 9 # contributors y: 18 # changes apps/common-lib/src/main/scala/com/gu/typerighter/lib/ContentClient.scala x: 6 # contributors y: 8 # changes apps/rule-manager/app/service/RuleTesting.scala x: 6 # contributors y: 21 # changes apps/rule-manager/client/src/ts/components/RuleForm.tsx x: 12 # contributors y: 55 # changes apps/rule-manager/client/src/ts/components/RuleFormSection.tsx x: 8 # contributors y: 11 # changes apps/rule-manager/client/src/ts/components/form/SectionHeader.tsx x: 2 # contributors y: 3 # changes apps/rule-manager/client/src/ts/components/icons/index.ts x: 9 # contributors y: 26 # changes apps/rule-manager/client/src/ts/utils/jsonSeq.ts x: 2 # contributors y: 2 # changes apps/common-lib/src/main/scala/com/gu/typerighter/lib/JsonHelpers.scala x: 3 # contributors y: 6 # changes apps/common-lib/src/main/scala/com/gu/typerighter/rules/BucketRuleResource.scala x: 4 # contributors y: 17 # changes apps/checker/app/services/MatcherProvisionerService.scala x: 6 # contributors y: 15 # changes apps/checker/app/services/MatcherPool.scala x: 10 # contributors y: 35 # changes apps/common-lib/src/main/scala/com/gu/typerighter/model/CheckerRule.scala x: 5 # contributors y: 10 # changes apps/common-lib/src/main/scala/com/gu/typerighter/model/RuleMatch.scala x: 8 # contributors y: 15 # changes apps/rule-manager/client/src/ts/components/RuleFormBatchEdit.tsx x: 6 # contributors y: 10 # changes apps/rule-manager/client/src/ts/constants/constants.ts x: 7 # contributors y: 15 # changes apps/rule-manager/app/AppComponents.scala x: 13 # contributors y: 44 # changes apps/rule-manager/app/service/DictionaryResource.scala x: 3 # contributors y: 3 # changes apps/rule-manager/client/src/ts/components/layout/Breadcrumbs.tsx x: 3 # contributors y: 5 # changes apps/rule-manager/client/src/ts/components/layout/Page.tsx x: 5 # contributors y: 30 # changes apps/common-lib/src/main/scala/com/gu/typerighter/model/Category.scala x: 6 # contributors y: 7 # changes apps/checker/app/views/main.scala.html x: 1 # contributors y: 4 # changes apps/rule-manager/client/src/ts/components/Diff.tsx x: 6 # contributors y: 9 # changes apps/rule-manager/client/src/ts/components/TagsSelector.tsx x: 8 # contributors y: 22 # changes apps/rule-manager/client/src/ts/components/TagsTable.tsx x: 5 # contributors y: 15 # changes apps/common-lib/src/main/scala/com/gu/typerighter/controllers/PandaAuthController.scala x: 2 # contributors y: 7 # changes apps/rule-manager/client/src/ts/components/PageNotFound.tsx x: 5 # contributors y: 7 # changes apps/rule-manager/client/src/ts/components/layout/Header.tsx x: 6 # contributors y: 22 # changes apps/rule-manager/client/src/css/theme.scss x: 4 # contributors y: 5 # changes apps/rule-manager/client/src/ts/components/RuleStatus.tsx x: 7 # contributors y: 16 # changes apps/checker/app/model/Check.scala x: 8 # contributors y: 21 # changes apps/checker/app/views/rules.scala.html x: 7 # contributors y: 13 # changes apps/rule-manager/client/src/ts/components/context/featureSwitches.tsx x: 5 # contributors y: 19 # changes apps/checker/app/model/MatcherWorkComplete.scala x: 5 # contributors y: 6 # changes apps/common-lib/src/main/scala/com/gu/typerighter/model/Suggestion.scala x: 6 # contributors y: 11 # changes apps/rule-manager/app/db/DbRuleLive.scala x: 7 # contributors y: 22 # changes apps/rule-manager/app/db/RuleTagLive.scala x: 5 # contributors y: 12 # changes apps/rule-manager/app/model/CheckerRuleForm.scala x: 4 # contributors y: 6 # changes apps/rule-manager/app/db/RuleTagDraft.scala x: 3 # contributors y: 12 # changes apps/checker/app/controllers/RulesController.scala x: 6 # contributors y: 19 # changes apps/checker/app/matchers/RegexMatcher.scala x: 5 # contributors y: 13 # changes apps/rule-manager/app/controllers/TagsController.scala x: 3 # contributors y: 13 # changes apps/rule-manager/app/utils/RuleManagerConfig.scala x: 6 # contributors y: 14 # changes apps/rule-manager/client/src/css/reset.css x: 5 # contributors y: 8 # changes apps/rule-manager/client/src/css/typography.css x: 4 # contributors y: 3 # changes apps/rule-manager/client/src/ts/components/FeatureSwitches.tsx x: 4 # contributors y: 4 # changes apps/rule-manager/client/src/ts/components/Label.tsx x: 5 # contributors y: 4 # changes apps/rule-manager/client/src/ts/components/LineBreak.tsx x: 6 # contributors y: 5 # changes apps/rule-manager/client/src/ts/components/hooks/useBatchRules.ts x: 6 # contributors y: 6 # changes apps/rule-manager/client/src/ts/utils/api.ts x: 5 # contributors y: 9 # changes apps/rule-manager/app/db/Tags.scala x: 4 # contributors y: 9 # changes apps/rule-manager/conf/evolutions/default/9.sql x: 2 # contributors y: 1 # changes apps/rule-manager/app/utils/Permissions.scala x: 7 # contributors y: 9 # changes apps/rule-manager/app/views/index.scala.html x: 3 # contributors y: 11 # changes apps/checker/app/utils/Matcher.scala x: 3 # contributors y: 8 # changes apps/rule-manager/app/AppLoader.scala x: 6 # contributors y: 16 # changes apps/rule-manager/conf/evolutions/default/3.sql x: 2 # contributors y: 5 # changes script/js/fixtures/example-rules-new.xml x: 1 # contributors y: 1 # changes
114.0
# changes
  min: 1.0
  average: 11.63
  25th percentile: 3.0
  median: 7.0
  75th percentile: 15.0
  max: 114.0
0 22.0
# contributors
min: 1.0 | average: 4.81 | 25th percentile: 2.0 | median: 4.0 | 75th percentile: 6.0 | max: 22.0

Number of Contributors vs. File Size: 169 points

riff-raff.yaml x: 10 # contributors y: 30 lines of code apps/checker/app/controllers/HomeController.scala x: 11 # contributors y: 37 lines of code apps/rule-manager/app/controllers/HomeController.scala x: 12 # contributors y: 55 lines of code build.sbt x: 22 # contributors y: 160 lines of code script/js/dump-db.ts x: 1 # contributors y: 97 lines of code apps/rule-manager/app/db/DbRuleDraft.scala x: 10 # contributors y: 609 lines of code apps/rule-manager/client/src/ts/components/hooks/useRules.ts x: 8 # contributors y: 138 lines of code apps/rule-manager/client/src/ts/components/pages/Rules.tsx x: 6 # contributors y: 260 lines of code apps/rule-manager/conf/evolutions/default/17.sql x: 1 # contributors y: 12 lines of code apps/rule-manager/client/vite.config.ts x: 4 # contributors y: 46 lines of code cdk/lib/index.ts x: 14 # contributors y: 281 lines of code apps/checker/app/matchers/LanguageToolMatcher.scala x: 7 # contributors y: 174 lines of code apps/common-lib/src/main/scala/com/gu/typerighter/lib/CommonConfig.scala x: 11 # contributors y: 70 lines of code script/js/compare-rule-xml.js x: 2 # contributors y: 69 lines of code apps/rule-manager/app/model/CreateRuleForm.scala x: 7 # contributors y: 54 lines of code apps/rule-manager/app/model/UpdateRuleForm.scala x: 9 # contributors y: 49 lines of code apps/rule-manager/app/utils/StringHelpers.scala x: 1 # contributors y: 9 lines of code apps/rule-manager/client/src/ts/components/RuleContent.tsx x: 10 # contributors y: 212 lines of code apps/rule-manager/client/src/ts/components/hooks/useRule.ts x: 10 # contributors y: 308 lines of code apps/rule-manager/client/src/ts/components/table/PaginatedRulesTable.tsx x: 4 # contributors y: 395 lines of code apps/rule-manager/conf/evolutions/default/16.sql x: 1 # contributors y: 2 lines of code apps/rule-manager/app/controllers/RulesController.scala x: 15 # contributors y: 298 lines of code apps/rule-manager/app/service/RuleManager.scala x: 9 # contributors y: 517 lines of code project/plugins.sbt x: 10 # contributors y: 8 lines of code apps/checker/app/AppComponents.scala x: 13 # contributors y: 124 lines of code apps/checker/app/matchers/DictionaryMatcher.scala x: 5 # contributors y: 81 lines of code apps/checker/app/services/EntityHelper.scala x: 4 # contributors y: 63 lines of code apps/checker/app/utils/CheckerConfig.scala x: 9 # contributors y: 22 lines of code apps/common-lib/src/main/scala/com/gu/typerighter/lib/ContentClient.scala x: 6 # contributors y: 32 lines of code apps/rule-manager/app/service/RuleTesting.scala x: 6 # contributors y: 143 lines of code apps/rule-manager/client/src/ts/components/RuleForm.tsx x: 12 # contributors y: 317 lines of code apps/rule-manager/client/src/ts/components/RuleFormSection.tsx x: 8 # contributors y: 33 lines of code apps/rule-manager/client/src/ts/components/form/SectionHeader.tsx x: 2 # contributors y: 5 lines of code apps/rule-manager/client/src/ts/components/icons/index.ts x: 9 # contributors y: 84 lines of code apps/rule-manager/client/src/ts/components/pages/Rule.tsx x: 4 # contributors y: 33 lines of code apps/rule-manager/client/src/ts/components/pages/TestRule.tsx x: 2 # contributors y: 208 lines of code apps/rule-manager/client/src/ts/utils/TyperighterChunkedAdapter.ts x: 2 # contributors y: 145 lines of code apps/rule-manager/client/src/ts/utils/jsonSeq.ts x: 2 # contributors y: 39 lines of code apps/common-lib/src/main/scala/com/gu/typerighter/lib/JsonHelpers.scala x: 3 # contributors y: 16 lines of code apps/common-lib/src/main/scala/com/gu/typerighter/rules/BucketRuleResource.scala x: 4 # contributors y: 98 lines of code apps/checker/app/services/MatcherProvisionerService.scala x: 6 # contributors y: 91 lines of code apps/checker/app/services/MatcherPool.scala x: 10 # contributors y: 297 lines of code apps/common-lib/src/main/scala/com/gu/typerighter/model/CheckerRule.scala x: 5 # contributors y: 180 lines of code apps/common-lib/src/main/scala/com/gu/typerighter/model/RuleMatch.scala x: 8 # contributors y: 75 lines of code apps/rule-manager/client/src/ts/components/CategorySelector.tsx x: 10 # contributors y: 72 lines of code apps/rule-manager/client/src/ts/components/RuleFormBatchEdit.tsx x: 6 # contributors y: 133 lines of code apps/rule-manager/client/src/ts/constants/constants.ts x: 7 # contributors y: 52 lines of code apps/rule-manager/app/AppComponents.scala x: 13 # contributors y: 81 lines of code apps/rule-manager/app/service/DictionaryResource.scala x: 3 # contributors y: 49 lines of code apps/rule-manager/app/utils/Dictionary.scala x: 3 # contributors y: 95 lines of code apps/rule-manager/client/src/ts/components/layout/Breadcrumbs.tsx x: 3 # contributors y: 14 lines of code apps/rule-manager/client/src/ts/components/layout/Page.tsx x: 5 # contributors y: 110 lines of code apps/common-lib/src/main/scala/com/gu/typerighter/model/Category.scala x: 6 # contributors y: 14 lines of code apps/checker/app/views/main.scala.html x: 1 # contributors y: 29 lines of code apps/common-lib/src/main/scala/com/gu/typerighter/fixtures/RuleMatchFixtures.scala x: 6 # contributors y: 20 lines of code apps/rule-manager/client/src/ts/components/Diff.tsx x: 6 # contributors y: 342 lines of code apps/rule-manager/client/src/ts/components/TagsSelector.tsx x: 8 # contributors y: 41 lines of code apps/rule-manager/client/src/ts/components/TagsTable.tsx x: 5 # contributors y: 408 lines of code apps/rule-manager/client/src/ts/components/context/tags.tsx x: 1 # contributors y: 161 lines of code apps/common-lib/src/main/scala/com/gu/typerighter/controllers/PandaAuthController.scala x: 2 # contributors y: 31 lines of code apps/common-lib/src/main/scala/com/gu/typerighter/model/TaggedWordlist.scala x: 2 # contributors y: 14 lines of code apps/rule-manager/client/src/ts/components/PageNotFound.tsx x: 5 # contributors y: 60 lines of code apps/rule-manager/client/src/ts/components/layout/FullHeightContentWithFixedHeader.tsx x: 1 # contributors y: 28 lines of code apps/rule-manager/client/src/ts/components/layout/Header.tsx x: 6 # contributors y: 70 lines of code apps/rule-manager/client/src/ts/index.tsx x: 7 # contributors y: 11 lines of code apps/rule-manager/client/src/css/theme.scss x: 4 # contributors y: 8 lines of code apps/rule-manager/client/src/ts/components/RuleStatus.tsx x: 7 # contributors y: 73 lines of code apps/rule-manager/client/src/ts/components/rule/ConciseRuleStatus.tsx x: 1 # contributors y: 39 lines of code apps/rule-manager/conf/evolutions/default/14.sql x: 1 # contributors y: 10 lines of code apps/checker/app/services/collins/MorfologikCollinsSpellerRule.java x: 2 # contributors y: 32 lines of code apps/checker/app/views/rules.scala.html x: 7 # contributors y: 41 lines of code apps/rule-manager/client/src/ts/components/context/featureSwitches.tsx x: 5 # contributors y: 90 lines of code apps/checker/app/services/collins/CollinsEnglish.java x: 2 # contributors y: 26 lines of code apps/checker/app/services/collins/DictionaryBuilder.scala x: 2 # contributors y: 177 lines of code apps/checker/app/services/collins/SpellDictionaryBuilder.scala x: 2 # contributors y: 75 lines of code apps/rule-manager/client/src/ts/components/modals/Reason.tsx x: 6 # contributors y: 64 lines of code apps/rule-manager/client/src/ts/components/modals/Revert.tsx x: 2 # contributors y: 58 lines of code apps/checker/app/controllers/CapiProxyController.scala x: 9 # contributors y: 35 lines of code apps/checker/app/model/MatcherWorkComplete.scala x: 5 # contributors y: 12 lines of code apps/common-lib/src/main/scala/com/gu/typerighter/model/Document.scala x: 5 # contributors y: 17 lines of code apps/common-lib/src/main/scala/com/gu/typerighter/model/Suggestion.scala x: 6 # contributors y: 31 lines of code apps/common-lib/src/main/scala/com/gu/typerighter/model/TextBlock.scala x: 8 # contributors y: 67 lines of code apps/common-lib/src/main/scala/com/gu/typerighter/model/TextRange.scala x: 6 # contributors y: 40 lines of code apps/rule-manager/app/db/DbRuleLive.scala x: 7 # contributors y: 304 lines of code apps/rule-manager/app/db/RuleTagLive.scala x: 5 # contributors y: 132 lines of code apps/rule-manager/app/model/CheckerRuleForm.scala x: 4 # contributors y: 105 lines of code apps/rule-manager/conf/evolutions/default/13.sql x: 3 # contributors y: 10 lines of code apps/rule-manager/app/db/RuleTagDraft.scala x: 3 # contributors y: 107 lines of code apps/checker/app/controllers/ApiController.scala x: 6 # contributors y: 78 lines of code apps/checker/app/controllers/RulesController.scala x: 6 # contributors y: 23 lines of code apps/checker/app/matchers/RegexMatcher.scala x: 5 # contributors y: 53 lines of code apps/common-lib/src/main/scala/com/gu/typerighter/lib/HMACClient.scala x: 2 # contributors y: 15 lines of code apps/rule-manager/app/controllers/TagsController.scala x: 3 # contributors y: 89 lines of code apps/rule-manager/client/src/css/reset.css x: 5 # contributors y: 32 lines of code apps/rule-manager/client/src/css/typography.css x: 4 # contributors y: 35 lines of code apps/rule-manager/client/src/ts/components/FeatureSwitches.tsx x: 4 # contributors y: 40 lines of code apps/rule-manager/client/src/ts/components/LineBreak.tsx x: 6 # contributors y: 10 lines of code apps/rule-manager/client/src/ts/components/RuleDataLastUpdated.tsx x: 4 # contributors y: 37 lines of code apps/rule-manager/client/src/ts/components/RuleHistory.tsx x: 5 # contributors y: 93 lines of code apps/rule-manager/client/src/ts/components/helpers/hasCreateEditPermissions.ts x: 4 # contributors y: 6 lines of code apps/rule-manager/client/src/ts/components/hooks/usePeriodicRefresh.ts x: 4 # contributors y: 10 lines of code apps/rule-manager/client/src/ts/components/icons/downChevron.tsx x: 4 # contributors y: 16 lines of code apps/rule-manager/client/src/ts/components/icons/search.tsx x: 4 # contributors y: 24 lines of code apps/rule-manager/client/src/ts/components/layout/Logo.tsx x: 4 # contributors y: 20 lines of code apps/rule-manager/client/src/ts/components/layout/ProfileMenu.tsx x: 4 # contributors y: 23 lines of code apps/rule-manager/client/src/ts/constants/euiTheme.ts x: 4 # contributors y: 12 lines of code apps/rule-manager/client/src/ts/utils/api.ts x: 5 # contributors y: 42 lines of code apps/rule-manager/client/src/ts/utils/date.ts x: 4 # contributors y: 2 lines of code apps/rule-manager/client/src/ts/utils/error.ts x: 5 # contributors y: 6 lines of code apps/rule-manager/client/src/ts/utils/window.tsx x: 5 # contributors y: 24 lines of code apps/rule-manager/app/db/Tags.scala x: 4 # contributors y: 155 lines of code apps/rule-manager/app/db/DbRule.scala x: 10 # contributors y: 40 lines of code apps/rule-manager/app/service/SheetsRuleResource.scala x: 5 # contributors y: 149 lines of code apps/rule-manager/conf/evolutions/default/12.sql x: 2 # contributors y: 8 lines of code apps/rule-manager/conf/evolutions/default/11.sql x: 3 # contributors y: 26 lines of code apps/rule-manager/conf/evolutions/default/10.sql x: 2 # contributors y: 2 lines of code apps/rule-manager/app/utils/Errors.scala x: 2 # contributors y: 3 lines of code apps/rule-manager/conf/evolutions/default/7.sql x: 3 # contributors y: 20 lines of code apps/rule-manager/app/db/DB.scala x: 2 # contributors y: 17 lines of code apps/rule-manager/app/utils/FormHelpers.scala x: 1 # contributors y: 18 lines of code apps/rule-manager/app/utils/LocalStack.scala x: 1 # contributors y: 21 lines of code apps/rule-manager/app/views/index.scala.html x: 3 # contributors y: 30 lines of code apps/rule-manager/conf/evolutions/default/6.sql x: 1 # contributors y: 23 lines of code apps/checker/app/utils/Matcher.scala x: 3 # contributors y: 17 lines of code apps/common-lib/src/main/scala/com/gu/typerighter/model/PatternToken.scala x: 5 # contributors y: 27 lines of code apps/rule-manager/app/AppLoader.scala x: 6 # contributors y: 19 lines of code apps/checker/conf/logback.xml x: 3 # contributors y: 28 lines of code apps/rule-manager/conf/evolutions/default/2.sql x: 1 # contributors y: 4 lines of code apps/checker/app/AppLoader.scala x: 5 # contributors y: 20 lines of code apps/checker/app/utils/CloudWatchClient.scala x: 5 # contributors y: 34 lines of code apps/checker/app/utils/Timer.scala x: 4 # contributors y: 59 lines of code script/js/fixtures/example-rules-new.xml x: 1 # contributors y: 604 lines of code script/js/fixtures/example-rules-old.xml x: 1 # contributors y: 75 lines of code apps/checker/app/assets/stylesheets/main.less x: 1 # contributors y: 351 lines of code
609.0
lines of code
  min: 2.0
  average: 73.89
  25th percentile: 14.0
  median: 32.0
  75th percentile: 81.0
  max: 609.0
0 22.0
# contributors
min: 1.0 | average: 4.81 | 25th percentile: 2.0 | median: 4.0 | 75th percentile: 6.0 | max: 22.0