-
Command line execution (CLI mode): Yes
| fileCount | authorCount | commitCount | daysSinceLastCommit | daysSinceLastCreation | daysSinceLastModification | |
|---|---|---|---|---|---|---|
| count | 251.000000 | 251.000000 | 251.000000 | 251.000000 | 251.000000 | 251.000000 |
| mean | 20.561753 | 12.920319 | 126.768924 | 208.035857 | 547.908367 | 228.956175 |
| std | 96.686458 | 42.712921 | 432.754760 | 159.768266 | 473.727343 | 234.534181 |
| min | 1.000000 | 2.000000 | 2.000000 | 36.000000 | 41.000000 | 36.000000 |
| 25% | 2.000000 | 2.000000 | 5.000000 | 83.000000 | 246.000000 | 83.000000 |
| 50% | 5.000000 | 4.000000 | 23.000000 | 221.000000 | 399.000000 | 221.000000 |
| 75% | 12.000000 | 9.000000 | 66.000000 | 258.000000 | 623.500000 | 277.000000 |
| max | 1389.000000 | 575.000000 | 4840.000000 | 734.000000 | 1720.000000 | 1662.000000 |
| directoryPath | directoryParentPath | directoryName | fileCount | firstFile | mostFrequentFileExtension | authorCount | mainAuthor | secondAuthor | commitCount | daysSinceLastCommit | daysSinceLastCreation | daysSinceLastModification | lastCommitDate | lastCreationDate | lastModificationDate | maxCommitSha | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | react-router-7.13.1/examples/custom-query-parsing/types | react-router-7.13.1/examples/custom-query-parsing | types | 1 | react-router-7.13.1/examples/custom-query-parsing/types/jsurl.d.ts | ts | 3 | Logan McAnsh | Matt Brophy | 5 | 734 | 1622 | 1622 | 2024-03-27 | 2021-10-20 | 2021-10-20 | dd0de338dfb32e38d1f4b091b3442ae55515edc3 |
| 1 | react-router-7.13.1/integration/helpers/cloudflare-dev-proxy-template/app/routes | react-router-7.13.1/integration/helpers/cloudflare-dev-proxy-template/app | routes | 1 | react-router-7.13.1/integration/helpers/cloudflare-dev-proxy-template/app/routes/_index.tsx | tsx | 4 | Jacob Ebey | Mark Dalgleish | 19 | 390 | 399 | 399 | 2025-03-06 | 2025-02-24 | 2025-02-24 | f8b1a47883109f968702ff272a370070577ca2ed |
| 2 | react-router-7.13.1/integration/helpers/cloudflare-dev-proxy-template/public | react-router-7.13.1/integration/helpers/cloudflare-dev-proxy-template | public | 1 | react-router-7.13.1/integration/helpers/cloudflare-dev-proxy-template/public/favicon.ico | ico | 2 | Mark Dalgleish | Matt Brophy | 3 | 390 | 399 | 399 | 2025-03-06 | 2025-02-24 | 2025-02-24 | c838b33e3f6c41c263ee8522a336539db23d7ad5 |
| 3 | react-router-7.13.1/integration/helpers/rsc-vite-framework/app/routes | react-router-7.13.1/integration/helpers/rsc-vite-framework/app | routes | 1 | react-router-7.13.1/integration/helpers/rsc-vite-framework/app/routes/_index.tsx | tsx | 2 | Mark Dalgleish | Matt Brophy | 3 | 236 | 246 | 246 | 2025-08-07 | 2025-07-28 | 2025-07-28 | ed1196fffdf832d6e68ed17de08027065d24051e |
| 4 | react-router-7.13.1/integration/helpers/rsc-vite-framework/public | react-router-7.13.1/integration/helpers/rsc-vite-framework | public | 1 | react-router-7.13.1/integration/helpers/rsc-vite-framework/public/favicon.ico | ico | 2 | Mark Dalgleish | Matt Brophy | 3 | 236 | 246 | 246 | 2025-08-07 | 2025-07-28 | 2025-07-28 | ed1196fffdf832d6e68ed17de08027065d24051e |
| 5 | react-router-7.13.1/integration/helpers/rsc-vite/public | react-router-7.13.1/integration/helpers/rsc-vite | public | 1 | react-router-7.13.1/integration/helpers/rsc-vite/public/favicon.ico | ico | 2 | Jacob Ebey | Matt Brophy | 4 | 258 | 277 | 277 | 2025-07-16 | 2025-06-26 | 2025-06-26 | f153b191e1c52bc8fb0e485bfd5d8ec2a8752104 |
| 6 | react-router-7.13.1/integration/helpers/vite-5-template/app/routes | react-router-7.13.1/integration/helpers/vite-5-template/app | routes | 1 | react-router-7.13.1/integration/helpers/vite-5-template/app/routes/_index.tsx | tsx | 6 | Jacob Ebey | Mark Dalgleish | 21 | 466 | 469 | 469 | 2024-12-20 | 2024-12-17 | 2024-12-17 | f8b1a47883109f968702ff272a370070577ca2ed |
| 7 | react-router-7.13.1/integration/helpers/vite-5-template/public | react-router-7.13.1/integration/helpers/vite-5-template | public | 1 | react-router-7.13.1/integration/helpers/vite-5-template/public/favicon.ico | ico | 2 | Mark Dalgleish | Matt Brophy | 3 | 466 | 469 | 469 | 2024-12-20 | 2024-12-17 | 2024-12-17 | 5115991bfaef708b91dd4793831a3b2b2825a618 |
| 8 | react-router-7.13.1/integration/helpers/vite-6-template/app/routes | react-router-7.13.1/integration/helpers/vite-6-template/app | routes | 1 | react-router-7.13.1/integration/helpers/vite-6-template/app/routes/_index.tsx | tsx | 2 | Mark Dalgleish | Matt Brophy | 3 | 466 | 469 | 469 | 2024-12-20 | 2024-12-17 | 2024-12-17 | 5115991bfaef708b91dd4793831a3b2b2825a618 |
| 9 | react-router-7.13.1/integration/helpers/vite-6-template/public | react-router-7.13.1/integration/helpers/vite-6-template | public | 1 | react-router-7.13.1/integration/helpers/vite-6-template/public/favicon.ico | ico | 2 | Mark Dalgleish | Matt Brophy | 3 | 466 | 469 | 469 | 2024-12-20 | 2024-12-17 | 2024-12-17 | 5115991bfaef708b91dd4793831a3b2b2825a618 |
| 10 | react-router-7.13.1/integration/helpers/vite-7-beta-template/app/routes | react-router-7.13.1/integration/helpers/vite-7-beta-template/app | routes | 1 | react-router-7.13.1/integration/helpers/vite-7-beta-template/app/routes/_index.tsx | tsx | 2 | Mark Dalgleish | Matt Brophy | 3 | 277 | 298 | 298 | 2025-06-27 | 2025-06-05 | 2025-06-05 | d424be65a191065a6a47015f91164974ab715d62 |
| 11 | react-router-7.13.1/integration/helpers/vite-7-beta-template/public | react-router-7.13.1/integration/helpers/vite-7-beta-template | public | 1 | react-router-7.13.1/integration/helpers/vite-7-beta-template/public/favicon.ico | ico | 2 | Mark Dalgleish | Matt Brophy | 3 | 277 | 298 | 298 | 2025-06-27 | 2025-06-05 | 2025-06-05 | d424be65a191065a6a47015f91164974ab715d62 |
| 12 | react-router-7.13.1/integration/helpers/vite-plugin-cloudflare-template/app/routes | react-router-7.13.1/integration/helpers/vite-plugin-cloudflare-template/app | routes | 1 | react-router-7.13.1/integration/helpers/vite-plugin-cloudflare-template/app/routes/_index.tsx | tsx | 2 | Mark Dalgleish | Matt Brophy | 3 | 390 | 399 | 399 | 2025-03-06 | 2025-02-24 | 2025-02-24 | c838b33e3f6c41c263ee8522a336539db23d7ad5 |
| 13 | react-router-7.13.1/integration/helpers/vite-plugin-cloudflare-template/public | react-router-7.13.1/integration/helpers/vite-plugin-cloudflare-template | public | 1 | react-router-7.13.1/integration/helpers/vite-plugin-cloudflare-template/public/favicon.ico | ico | 4 | Jacob Ebey | Mark Dalgleish | 18 | 390 | 399 | 399 | 2025-03-06 | 2025-02-24 | 2025-02-24 | f8b1a47883109f968702ff272a370070577ca2ed |
| 14 | react-router-7.13.1/integration/helpers/vite-plugin-cloudflare-template/workers | react-router-7.13.1/integration/helpers/vite-plugin-cloudflare-template | workers | 1 | react-router-7.13.1/integration/helpers/vite-plugin-cloudflare-template/workers/app.ts | ts | 2 | Mark Dalgleish | Matt Brophy | 12 | 250 | 399 | 250 | 2025-07-24 | 2025-02-24 | 2025-07-24 | f77ca631ab6016e138716edf785c20d70b2855df |
| 15 | react-router-7.13.1/integration/helpers/vite-rolldown-template/app/routes | react-router-7.13.1/integration/helpers/vite-rolldown-template/app | routes | 1 | react-router-7.13.1/integration/helpers/vite-rolldown-template/app/routes/_index.tsx | tsx | 2 | Mark Dalgleish | Matt Brophy | 3 | 348 | 354 | 354 | 2025-04-17 | 2025-04-11 | 2025-04-11 | c97fd4c1e43e880787986dd23352e045ff4de4c5 |
| 16 | react-router-7.13.1/integration/helpers/vite-rolldown-template/public | react-router-7.13.1/integration/helpers/vite-rolldown-template | public | 1 | react-router-7.13.1/integration/helpers/vite-rolldown-template/public/favicon.ico | ico | 2 | Mark Dalgleish | Matt Brophy | 3 | 348 | 354 | 354 | 2025-04-17 | 2025-04-11 | 2025-04-11 | c97fd4c1e43e880787986dd23352e045ff4de4c5 |
| 17 | react-router-7.13.1/packages/create-react-router/__tests__/fixtures/basic/app/routes | react-router-7.13.1/packages/create-react-router/__tests__/fixtures/basic/app | routes | 1 | react-router-7.13.1/packages/create-react-router/__tests__/fixtures/basic/app/routes/home.tsx | tsx | 2 | Mark Dalgleish | Michael Jackson | 3 | 494 | 516 | 516 | 2024-11-22 | 2024-10-31 | 2024-10-31 | c6afcf85f2003d93e77f901e2b4ecdef5e83fd97 |
| 18 | react-router-7.13.1/packages/create-react-router/__tests__/fixtures/basic/public | react-router-7.13.1/packages/create-react-router/__tests__/fixtures/basic | public | 1 | react-router-7.13.1/packages/create-react-router/__tests__/fixtures/basic/public/favicon.ico | ico | 2 | Mark Dalgleish | Michael Jackson | 3 | 494 | 516 | 516 | 2024-11-22 | 2024-10-31 | 2024-10-31 | c6afcf85f2003d93e77f901e2b4ecdef5e83fd97 |
| 19 | react-router-7.13.1/packages/create-react-router/__tests__/fixtures/blank | react-router-7.13.1/packages/create-react-router/__tests__/fixtures | blank | 1 | react-router-7.13.1/packages/create-react-router/__tests__/fixtures/blank/package.json | json | 2 | Mark Dalgleish | Michael Jackson | 3 | 494 | 516 | 516 | 2024-11-22 | 2024-10-31 | 2024-10-31 | c6afcf85f2003d93e77f901e2b4ecdef5e83fd97 |
| 20 | react-router-7.13.1/packages/create-react-router/__tests__/fixtures/with-ignored-dir | react-router-7.13.1/packages/create-react-router/__tests__/fixtures | with-ignored-dir | 1 | react-router-7.13.1/packages/create-react-router/__tests__/fixtures/with-ignored-dir/package.json | json | 2 | Mark Dalgleish | Michael Jackson | 3 | 494 | 516 | 516 | 2024-11-22 | 2024-10-31 | 2024-10-31 | c6afcf85f2003d93e77f901e2b4ecdef5e83fd97 |
| 21 | react-router-7.13.1/packages/react-router-architect/sessions | react-router-7.13.1/packages/react-router-architect | sessions | 1 | react-router-7.13.1/packages/react-router-architect/sessions/arcTableSessionStorage.ts | ts | 3 | Mark Dalgleish | Matt Brophy | 10 | 250 | 623 | 250 | 2025-07-24 | 2024-07-16 | 2025-07-24 | eed3ebd417e2522f527eee4fba098785ceb3dcfb |
| 22 | react-router-7.13.1/packages/react-router-cloudflare/sessions | react-router-7.13.1/packages/react-router-cloudflare | sessions | 1 | react-router-7.13.1/packages/react-router-cloudflare/sessions/workersKVStorage.ts | ts | 3 | Mark Dalgleish | Matt Brophy | 10 | 250 | 624 | 250 | 2025-07-24 | 2024-07-15 | 2025-07-24 | eed3ebd417e2522f527eee4fba098785ceb3dcfb |
| 23 | react-router-7.13.1/packages/react-router-dev/__tests__/fixtures/basic/app/routes | react-router-7.13.1/packages/react-router-dev/__tests__/fixtures/basic/app | routes | 1 | react-router-7.13.1/packages/react-router-dev/__tests__/fixtures/basic/app/routes/_index.tsx | tsx | 6 | Jacob Ebey | Mark Dalgleish | 25 | 438 | 439 | 439 | 2025-01-17 | 2025-01-16 | 2025-01-16 | fbe8ac244eedb8556dd0faf00dfbe1f78e461120 |
| 24 | react-router-7.13.1/packages/react-router-dev/__tests__/fixtures/basic/public | react-router-7.13.1/packages/react-router-dev/__tests__/fixtures/basic | public | 1 | react-router-7.13.1/packages/react-router-dev/__tests__/fixtures/basic/public/favicon.ico | ico | 2 | Mark Dalgleish | Matt Brophy | 4 | 438 | 439 | 439 | 2025-01-17 | 2025-01-16 | 2025-01-16 | c364bd450e5e8811bd4d24f7e5fe5489d361a66f |
| 25 | react-router-7.13.1/packages/react-router-express/__tests__ | react-router-7.13.1/packages/react-router-express | __tests__ | 1 | react-router-7.13.1/packages/react-router-express/__tests__/server-test.ts | ts | 12 | Chance Strickland | Hiroshi Ogawa | 72 | 250 | 648 | 250 | 2025-07-24 | 2024-06-21 | 2025-07-24 | fbe8ac244eedb8556dd0faf00dfbe1f78e461120 |
| 26 | react-router-7.13.1/packages/react-router-node/__tests__ | react-router-7.13.1/packages/react-router-node | __tests__ | 1 | react-router-7.13.1/packages/react-router-node/__tests__/sessions-test.ts | ts | 9 | Alexandru Bereghici | Chance Strickland | 36 | 153 | 648 | 153 | 2025-10-29 | 2024-06-21 | 2025-10-29 | fbe8ac244eedb8556dd0faf00dfbe1f78e461120 |
| 27 | react-router-7.13.1/packages/react-router-node/sessions | react-router-7.13.1/packages/react-router-node | sessions | 1 | react-router-7.13.1/packages/react-router-node/sessions/fileStorage.ts | ts | 14 | Alex Anderson | Alexandru Bereghici | 55 | 41 | 648 | 41 | 2026-02-18 | 2024-06-21 | 2026-02-18 | fbe8ac244eedb8556dd0faf00dfbe1f78e461120 |
| 28 | react-router-7.13.1/packages/react-router/__tests__/__snapshots__ | react-router-7.13.1/packages/react-router/__tests__ | __snapshots__ | 1 | react-router-7.13.1/packages/react-router/__tests__/__snapshots__/route-matching-test.tsx.snap | snap | 3 | Chance Strickland | Matt Brophy | 7 | 734 | 1720 | 1662 | 2024-03-27 | 2021-07-15 | 2021-09-10 | eff2bd9148de1849fb93519f59262e4b53e8d823 |
| 29 | react-router-7.13.1/packages/react-router/__tests__/dom/components | react-router-7.13.1/packages/react-router/__tests__/dom | components | 1 | react-router-7.13.1/packages/react-router/__tests__/dom/components/LazyComponent.tsx | tsx | 2 | Matt Brophy | Michael Jackson | 14 | 494 | 700 | 700 | 2024-11-22 | 2024-04-30 | 2024-04-30 | f8b1a47883109f968702ff272a370070577ca2ed |
Shows how many commits had changed one file, how many had changed two files, and so on. The chart is limited to 30 lines for improved readability. The data preview also includes overall statistics including the number of commits that are filtered out in the chart.
Sum of commits that changed more than 30 files (each) = 509
Max changed files with one commit = 1061
| filesPerCommit | commitCount | |
|---|---|---|
| count | 182.000000 | 182.000000 |
| mean | 155.329670 | 58.609890 |
| std | 194.184372 | 370.960999 |
| min | 1.000000 | 1.000000 |
| 25% | 46.250000 | 1.000000 |
| 50% | 91.500000 | 2.000000 |
| 75% | 165.500000 | 8.000000 |
| max | 1061.000000 | 4566.000000 |
| filesPerCommit | commitCount | |
|---|---|---|
| 0 | 1 | 4566 |
| 1 | 2 | 1761 |
| 2 | 3 | 877 |
| 3 | 4 | 555 |
| 4 | 5 | 469 |
| 5 | 6 | 282 |
| 6 | 7 | 194 |
| 7 | 8 | 154 |
| 8 | 9 | 99 |
| 9 | 10 | 130 |
| 10 | 11 | 127 |
| 11 | 12 | 252 |
| 12 | 13 | 90 |
| 13 | 14 | 78 |
| 14 | 15 | 49 |
| 15 | 16 | 45 |
| 16 | 17 | 41 |
| 17 | 18 | 37 |
| 18 | 19 | 44 |
| 19 | 20 | 32 |
| 20 | 21 | 34 |
| 21 | 22 | 21 |
| 22 | 23 | 79 |
| 23 | 24 | 26 |
| 24 | 25 | 30 |
| 25 | 26 | 12 |
| 26 | 27 | 15 |
| 27 | 28 | 20 |
| 28 | 29 | 18 |
| 29 | 30 | 21 |
This section analyzes files that where changed together within the same commit and provides several metrics to quantify the strength of the co-change relationship:
- Commit Count: The number of commits in which two files were changed together.
- Commit Lift: A ratio that indicates whether the co-change pattern is stronger than random chance, given how often each file changes.
- Jaccard Similarity: The ratio of commits involving either file that also involved both files.
The following tables show the top pairwise changed files based on these metrics. The following charts show how these metrics are distributed across pairs of files that were changed together.
| fileExtensionPair | fileExtensionPairCount | |
|---|---|---|
| 0 | ts↔ts | 975 |
| 1 | json↔json | 556 |
| 2 | ts↔tsx | 284 |
| 3 | tsx↔tsx | 232 |
| fileExtensionPair | updateCommitCount | GroupRank | filePair | filePairWithRelativePath | |
|---|---|---|---|---|---|
| 0 | ts↔ts | 37 | 1 | context↔index | packages/react-router/lib/context.ts↔packages/react-router/index.ts |
| 1 | ts↔ts | 29 | 2 | router↔utils | packages/react-router/lib/router/router.ts↔packages/react-router/lib/router/utils.ts |
| 2 | ts↔ts | 27 | 3 | catch-boundary-test↔error-boundary-test | integration/catch-boundary-test.ts↔integration/error-boundary-test.ts |
| 3 | ts↔ts | 25 | 4 | catch-boundary-data-test↔catch-boundary-test | integration/catch-boundary-data-test.ts↔integration/catch-boundary-test.ts |
| 4 | ts↔ts | 22 | 5 | vite-prerender-test↔plugin | integration/vite-prerender-test.ts↔packages/react-router-dev/vite/plugin.ts |
| 5 | ts↔ts | 21 | 6 | vite↔vite-css-test | integration/helpers/vite.ts↔integration/vite-css-test.ts |
| 6 | ts↔ts | 20 | 7 | catch-boundary-data-test↔error-boundary-test | integration/catch-boundary-data-test.ts↔integration/error-boundary-test.ts |
| 7 | ts↔ts | 19 | 8 | plugin↔vite | packages/react-router-dev/vite/plugin.ts↔integration/helpers/vite.ts |
| 8 | ts↔ts | 18 | 9 | index↔router | packages/react-router/index.ts↔packages/react-router/lib/router/router.ts |
| 9 | ts↔ts | 17 | 10 | config↔plugin | packages/react-router-dev/config/config.ts↔packages/react-router-dev/vite/plugin.ts |
| 10 | json↔json | 329 | 1 | package↔package | packages/react-router-dom/package.json↔packages/react-router/package.json |
| 11 | json↔json | 28 | 2 | package↔package | packages/react-router-dev/package.json↔packages/react-router/package.json |
| 12 | json↔json | 27 | 3 | package↔package | packages/react-router-dev/package.json↔packages/react-router-express/package.json |
| 13 | json↔json | 26 | 4 | package↔package | packages/react-router-express/package.json↔packages/react-router-node/package.json |
| 14 | json↔json | 25 | 5 | package↔package | packages/react-router-cloudflare/package.json↔packages/react-router-dev/package.json |
| 15 | json↔json | 24 | 6 | package↔package | packages/react-router-architect/package.json↔packages/react-router-cloudflare/package.json |
| 16 | json↔json | 23 | 7 | package↔package | packages/create-react-router/package.json↔packages/react-router-dev/package.json |
| 17 | json↔json | 22 | 8 | package↔package | packages/react-router-dev/package.json↔packages/react-router-fs-routes/package.json |
| 18 | json↔json | 21 | 9 | package↔package | packages/create-react-router/package.json↔packages/react-router/package.json |
| 19 | json↔json | 20 | 10 | package↔package | packages/create-react-router/package.json↔packages/react-router-architect/package.json |
| 20 | ts↔tsx | 69 | 1 | index↔components | packages/react-router/index.ts↔packages/react-router/lib/components.tsx |
| 21 | ts↔tsx | 58 | 2 | index↔hooks | packages/react-router/index.ts↔packages/react-router/lib/hooks.tsx |
| 22 | ts↔tsx | 51 | 3 | context↔components | packages/react-router/lib/context.ts↔packages/react-router/lib/components.tsx |
| 23 | ts↔tsx | 46 | 4 | context↔hooks | packages/react-router/lib/context.ts↔packages/react-router/lib/hooks.tsx |
| 24 | ts↔tsx | 31 | 5 | index↔data-memory-router-test | packages/react-router/index.ts↔packages/react-router/__tests__/data-memory-router-test.tsx |
| 25 | ts↔tsx | 24 | 6 | router↔lib | packages/react-router/lib/router/router.ts↔packages/react-router/lib/dom/lib.tsx |
| 26 | ts↔tsx | 23 | 7 | router↔components | packages/react-router/lib/router/router.ts↔packages/react-router/lib/components.tsx |
| 27 | ts↔tsx | 19 | 8 | context↔data-memory-router-test | packages/react-router/lib/context.ts↔packages/react-router/__tests__/data-memory-router-test.tsx |
| 28 | ts↔tsx | 17 | 9 | index↔hydrated-router | packages/react-router/index.ts↔packages/react-router/lib/dom-export/hydrated-router.tsx |
| 29 | ts↔tsx | 16 | 10 | router↔hooks | packages/react-router/lib/router/router.ts↔packages/react-router/lib/hooks.tsx |
| 30 | tsx↔tsx | 80 | 1 | components↔hooks | packages/react-router/lib/components.tsx↔packages/react-router/lib/hooks.tsx |
| 31 | tsx↔tsx | 43 | 2 | hooks↔data-memory-router-test | packages/react-router/lib/hooks.tsx↔packages/react-router/__tests__/data-memory-router-test.tsx |
| 32 | tsx↔tsx | 35 | 3 | components↔data-memory-router-test | packages/react-router/lib/components.tsx↔packages/react-router/__tests__/data-memory-router-test.tsx |
| 33 | tsx↔tsx | 34 | 4 | components↔lib | packages/react-router/lib/components.tsx↔packages/react-router/lib/dom/lib.tsx |
| 34 | tsx↔tsx | 21 | 5 | lib↔hooks | packages/react-router/lib/dom/lib.tsx↔packages/react-router/lib/hooks.tsx |
| 35 | tsx↔tsx | 18 | 6 | components↔hydrated-router | packages/react-router/lib/components.tsx↔packages/react-router/lib/dom-export/hydrated-router.tsx |
| 36 | tsx↔tsx | 16 | 7 | lib↔server | packages/react-router/lib/dom/lib.tsx↔packages/react-router/lib/dom/server.tsx |
| 37 | tsx↔tsx | 14 | 8 | hydrated-router↔lib | packages/react-router/lib/dom-export/hydrated-router.tsx↔packages/react-router/lib/dom/lib.tsx |
| 38 | tsx↔tsx | 13 | 9 | lib↔data-browser-router-test | packages/react-router/lib/dom/lib.tsx↔packages/react-router/__tests__/dom/data-browser-router-test.tsx |
| 39 | tsx↔tsx | 12 | 10 | components↔useNavigate-test | packages/react-router/lib/components.tsx↔packages/react-router/__tests__/useNavigate-test.tsx |
The commit min confidence is the commit count where both files were changed divided by the commit count of the file with the least commits. This metric is useful to identify pairs of files that are frequently changed together and is not biased by single files that are changed very often.
| fileExtensionPair | updateCommitMinConfidence | GroupRank | filePair | filePairWithRelativePath | |
|---|---|---|---|---|---|
| 0 | ts↔ts | 1.000000 | 1 | vite-dev-custom-entry-test↔vite-absolute-base-test | integration/vite-dev-custom-entry-test.ts↔integration/vite-absolute-base-test.ts |
| 1 | ts↔ts | 0.800000 | 2 | vite-dotenv-test↔vite-node-env-test | integration/vite-dotenv-test.ts↔integration/vite-node-env-test.ts |
| 2 | ts↔ts | 0.750000 | 3 | routes↔routes | packages/react-router-dev/config/routes.ts↔packages/react-router-dev/routes.ts |
| 3 | ts↔ts | 0.666667 | 4 | index↔index | packages/react-router/index.ts↔packages/react-router-dom/index.ts |
| 4 | ts↔ts | 0.555556 | 5 | plugin↔dev | packages/react-router-dev/vite/plugin.ts↔packages/react-router/lib/server-runtime/dev.ts |
| 5 | ts↔ts | 0.500000 | 6 | router↔lazy-discovery-test | packages/react-router/lib/router/router.ts↔packages/react-router/__tests__/router/lazy-discovery-test.ts |
| 6 | ts↔ts | 0.444444 | 7 | router↔should-revalidate-test | packages/react-router/lib/router/router.ts↔packages/react-router/__tests__/router/should-revalidate-test.ts |
| 7 | ts↔ts | 0.428571 | 8 | vite-dev-test↔vite-dot-client-test | integration/vite-dev-test.ts↔integration/vite-dot-client-test.ts |
| 8 | ts↔ts | 0.423729 | 9 | catch-boundary-data-test↔catch-boundary-test | integration/catch-boundary-data-test.ts↔integration/catch-boundary-test.ts |
| 9 | ts↔ts | 0.421875 | 10 | catch-boundary-test↔error-boundary-test | integration/catch-boundary-test.ts↔integration/error-boundary-test.ts |
| 10 | json↔json | 1.000000 | 1 | package↔package-lock | examples/view-transitions/package.json↔examples/view-transitions/package-lock.json |
| 11 | json↔json | 0.702703 | 2 | package↔package | examples/auth/package.json↔examples/basic/package.json |
| 12 | json↔json | 0.694444 | 3 | package↔package | examples/auth/package.json↔examples/custom-link/package.json |
| 13 | json↔json | 0.676471 | 4 | package↔package | examples/basic/package.json↔examples/custom-filter-link/package.json |
| 14 | json↔json | 0.666667 | 5 | package↔package | examples/custom-link/package.json↔examples/custom-query-parsing/package.json |
| 15 | json↔json | 0.656250 | 6 | package↔package | examples/basic/package.json↔examples/multi-app/package.json |
| 16 | json↔json | 0.650000 | 7 | package-lock↔package-lock | examples/error-boundaries/package-lock.json↔examples/notes/package-lock.json |
| 17 | json↔json | 0.638889 | 8 | package↔package | examples/custom-link/package.json↔examples/modal/package.json |
| 18 | json↔json | 0.621622 | 9 | package↔package | examples/basic/package.json↔examples/modal/package.json |
| 19 | json↔json | 0.606061 | 10 | package↔package | examples/custom-filter-link/package.json↔examples/custom-query-parsing/package.json |
| 20 | ts↔tsx | 0.500000 | 1 | router↔context-middleware-test | packages/react-router/lib/router/router.ts↔packages/react-router/__tests__/router/context-middleware-test.tsx |
| 21 | ts↔tsx | 0.466667 | 2 | global↔hydrated-router | packages/react-router/lib/dom/global.ts↔packages/react-router/lib/dom-export/hydrated-router.tsx |
| 22 | ts↔tsx | 0.447368 | 3 | context↔components | packages/react-router/lib/context.ts↔packages/react-router/lib/components.tsx |
| 23 | ts↔tsx | 0.403509 | 4 | context↔hooks | packages/react-router/lib/context.ts↔packages/react-router/lib/hooks.tsx |
| 24 | ts↔tsx | 0.384615 | 5 | context↔entry.client | packages/react-router/lib/context.ts↔examples/ssr-data-router/src/entry.client.tsx |
| 25 | ts↔tsx | 0.363636 | 6 | rsc-test↔entry.rsc | integration/rsc/rsc-test.ts↔integration/helpers/rsc-vite/src/entry.rsc.tsx |
| 26 | ts↔tsx | 0.347826 | 7 | index↔app | packages/react-router/index.ts↔examples/data-router/src/app.tsx |
| 27 | ts↔tsx | 0.344444 | 8 | index↔data-memory-router-test | packages/react-router/index.ts↔packages/react-router/__tests__/data-memory-router-test.tsx |
| 28 | ts↔tsx | 0.333333 | 9 | dev↔components | packages/react-router/lib/server-runtime/dev.ts↔packages/react-router/lib/dom/ssr/components.tsx |
| 29 | ts↔tsx | 0.320000 | 10 | serverHandoff↔hydrated-router | packages/react-router/lib/server-runtime/serverHandoff.ts↔packages/react-router/lib/dom-export/hydrated-router.tsx |
| 30 | tsx↔tsx | 0.500000 | 1 | entry.browser↔entry.browser | integration/helpers/rsc-vite/src/entry.browser.tsx↔playground/rsc-vite/src/entry.browser.tsx |
| 31 | tsx↔tsx | 0.477778 | 2 | hooks↔data-memory-router-test | packages/react-router/lib/hooks.tsx↔packages/react-router/__tests__/data-memory-router-test.tsx |
| 32 | tsx↔tsx | 0.454545 | 3 | client-on-error-test↔components | packages/react-router/__tests__/dom/client-on-error-test.tsx↔packages/react-router/lib/components.tsx |
| 33 | tsx↔tsx | 0.434783 | 4 | components↔app | packages/react-router/lib/components.tsx↔examples/data-router/src/app.tsx |
| 34 | tsx↔tsx | 0.428571 | 5 | navigate-test↔same-component-lifecycle-test | packages/react-router/__tests__/navigate-test.tsx↔packages/react-router/__tests__/same-component-lifecycle-test.tsx |
| 35 | tsx↔tsx | 0.416667 | 6 | entry.ssr↔entry.ssr | integration/helpers/rsc-vite/src/entry.ssr.tsx↔playground/rsc-vite/src/entry.ssr.tsx |
| 36 | tsx↔tsx | 0.409091 | 7 | data-memory-router-test↔entry.server | packages/react-router/__tests__/data-memory-router-test.tsx↔examples/ssr-data-router/src/entry.server.tsx |
| 37 | tsx↔tsx | 0.400000 | 8 | entry.rsc↔entry.rsc | integration/helpers/rsc-vite/src/entry.rsc.tsx↔playground/rsc-vite/src/entry.rsc.tsx |
| 38 | tsx↔tsx | 0.391304 | 9 | data-memory-router-test↔app | packages/react-router/__tests__/data-memory-router-test.tsx↔examples/data-router/src/app.tsx |
| 39 | tsx↔tsx | 0.388889 | 10 | components↔data-memory-router-test | packages/react-router/lib/components.tsx↔packages/react-router/__tests__/data-memory-router-test.tsx |
| fileExtensionPair | updateCommitLift | GroupRank | filePair | filePairWithRelativePath | |
|---|---|---|---|---|---|
| 0 | ts↔ts | 151.400000 | 1 | vite-dev-custom-entry-test↔vite-absolute-base-test | integration/vite-dev-custom-entry-test.ts↔integration/vite-absolute-base-test.ts |
| 1 | ts↔ts | 142.494118 | 2 | vite-loader-context-test↔vite-node-env-test | integration/vite-loader-context-test.ts↔integration/vite-node-env-test.ts |
| 2 | ts↔ts | 113.550000 | 3 | sessions-test↔sessions | packages/react-router/__tests__/server-runtime/sessions-test.ts↔packages/react-router/lib/server-runtime/sessions.ts |
| 3 | ts↔ts | 100.099174 | 4 | remove-exports-test↔remove-exports | packages/react-router-dev/vite/remove-exports-test.ts↔packages/react-router-dev/vite/remove-exports.ts |
| 4 | ts↔ts | 91.757576 | 5 | fileStorage↔sessions-test | packages/react-router-node/sessions/fileStorage.ts↔packages/react-router-node/__tests__/sessions-test.ts |
| 5 | ts↔ts | 89.718519 | 6 | vite-dotenv-test↔vite-node-env-test | integration/vite-dotenv-test.ts↔integration/vite-node-env-test.ts |
| 6 | ts↔ts | 87.346154 | 7 | routes↔routes | packages/react-router-dev/config/routes.ts↔packages/react-router-dev/routes.ts |
| 7 | ts↔ts | 79.684211 | 8 | vite-server-bundles-test↔vite-node-env-test | integration/vite-server-bundles-test.ts↔integration/vite-node-env-test.ts |
| 8 | ts↔ts | 75.700000 | 9 | virtual-route-config↔virtual-route-modules | packages/react-router-dev/vite/rsc/virtual-route-config.ts↔packages/react-router-dev/vite/rsc/virtual-route-modules.ts |
| 9 | ts↔ts | 70.418605 | 10 | vite-hmr-hdr-test↔vite-node-env-test | integration/vite-hmr-hdr-test.ts↔integration/vite-node-env-test.ts |
| 10 | json↔json | 432.571429 | 1 | package↔package-lock | examples/view-transitions/package.json↔examples/view-transitions/package-lock.json |
| 11 | json↔json | 139.753846 | 2 | package-lock↔package-lock | examples/basic-data-router/package-lock.json↔examples/lazy-loading-router-provider/package-lock.json |
| 12 | json↔json | 100.933333 | 3 | package-lock↔package-lock | examples/basic-data-router/package-lock.json↔examples/navigation-blocking/package-lock.json |
| 13 | json↔json | 95.621053 | 4 | package-lock↔package-lock | examples/basic-data-router/package-lock.json↔examples/custom-filter-link/package-lock.json |
| 14 | json↔json | 90.840000 | 5 | package-lock↔package-lock | examples/basic-data-router/package-lock.json↔examples/custom-link/package-lock.json |
| 15 | json↔json | 89.463636 | 6 | package-lock↔package-lock | examples/error-boundaries/package-lock.json↔examples/notes/package-lock.json |
| 16 | json↔json | 87.346154 | 7 | package↔package-lock | examples/lazy-loading-router-provider/package.json↔examples/lazy-loading-router-provider/package-lock.json |
| 17 | json↔json | 86.514286 | 8 | package-lock↔package-lock | examples/auth/package-lock.json↔examples/basic-data-router/package-lock.json |
| 18 | json↔json | 83.820069 | 9 | package↔package | examples/error-boundaries/package.json↔examples/notes/package.json |
| 19 | json↔json | 82.581818 | 10 | package-lock↔package-lock | examples/basic-data-router/package-lock.json↔examples/error-boundaries/package-lock.json |
| 20 | ts↔tsx | 30.280000 | 1 | global↔components-test | packages/react-router/lib/dom/global.ts↔packages/react-router/__tests__/dom/ssr/components-test.tsx |
| 21 | ts↔tsx | 25.880342 | 2 | rsc-nojs-test↔server.ssr | integration/rsc/rsc-nojs-test.ts↔packages/react-router/lib/rsc/server.ssr.tsx |
| 22 | ts↔tsx | 25.024793 | 3 | rsc-test↔entry.rsc | integration/rsc/rsc-test.ts↔integration/helpers/rsc-vite/src/entry.rsc.tsx |
| 23 | ts↔tsx | 24.224000 | 4 | serverHandoff↔components-test | packages/react-router/lib/server-runtime/serverHandoff.ts↔packages/react-router/__tests__/dom/ssr/components-test.tsx |
| 24 | ts↔tsx | 21.027778 | 5 | lazy-discovery-test↔partial-hydration-test | packages/react-router/__tests__/router/lazy-discovery-test.ts↔packages/react-router/__tests__/dom/partial-hydration-test.tsx |
| 25 | ts↔tsx | 18.925000 | 6 | entry↔scroll-restoration-test | packages/react-router/lib/dom/ssr/entry.ts↔packages/react-router/__tests__/dom/scroll-restoration-test.tsx |
| 26 | ts↔tsx | 18.351515 | 7 | index↔server | packages/react-router-dom/index.ts↔packages/react-router/lib/dom/server.tsx |
| 27 | ts↔tsx | 17.204545 | 8 | rsc-test↔entry.ssr | integration/rsc/rsc-test.ts↔packages/react-router-dev/config/default-rsc-entries/entry.ssr.tsx |
| 28 | ts↔tsx | 15.292929 | 9 | entry↔server | packages/react-router/lib/dom/ssr/entry.ts↔packages/react-router/lib/dom/ssr/server.tsx |
| 29 | ts↔tsx | 15.032624 | 10 | global↔hydrated-router | packages/react-router/lib/dom/global.ts↔packages/react-router/lib/dom-export/hydrated-router.tsx |
| 30 | tsx↔tsx | 252.333333 | 1 | App↔App | examples/modal/src/App.tsx↔examples/search-params/src/App.tsx |
| 31 | tsx↔tsx | 137.636364 | 2 | App↔App | examples/auth/src/App.tsx↔examples/modal/src/App.tsx |
| 32 | tsx↔tsx | 116.461538 | 3 | entry.client↔App | examples/ssr-data-router/src/entry.client.tsx↔examples/ssr-data-router/src/App.tsx |
| 33 | tsx↔tsx | 113.550000 | 4 | entry.rsc↔entry.browser | playground/rsc-vite/src/entry.rsc.tsx↔playground/rsc-vite/src/entry.browser.tsx |
| 34 | tsx↔tsx | 110.109091 | 5 | entry.rsc↔entry.rsc | integration/helpers/rsc-vite/src/entry.rsc.tsx↔playground/rsc-vite/src/entry.rsc.tsx |
| 35 | tsx↔tsx | 108.142857 | 6 | entry.browser↔entry.browser | integration/helpers/rsc-vite/src/entry.browser.tsx↔playground/rsc-vite/src/entry.browser.tsx |
| 36 | tsx↔tsx | 103.227273 | 7 | entry.rsc↔entry.browser | integration/helpers/rsc-vite/src/entry.rsc.tsx↔playground/rsc-vite/src/entry.browser.tsx |
| 37 | tsx↔tsx | 100.933333 | 8 | Router-test↔descendant-routes-warning-test | packages/react-router/__tests__/Router-test.tsx↔packages/react-router/__tests__/descendant-routes-warning-test.tsx |
| 38 | tsx↔tsx | 84.111111 | 9 | entry.ssr↔entry.ssr | packages/react-router-dev/config/default-rsc-entries/entry.ssr.tsx↔playground/rsc-vite/src/entry.ssr.tsx |
| 39 | tsx↔tsx | 78.649351 | 10 | App↔App | examples/custom-query-parsing/src/App.tsx↔examples/auth/src/App.tsx |
| fileExtensionPair | updateCommitJaccardSimilarity | GroupRank | filePair | filePairWithRelativePath | |
|---|---|---|---|---|---|
| 0 | ts↔ts | 0.259615 | 1 | catch-boundary-test↔error-boundary-test | integration/catch-boundary-test.ts↔integration/error-boundary-test.ts |
| 1 | ts↔ts | 0.247525 | 2 | catch-boundary-data-test↔catch-boundary-test | integration/catch-boundary-data-test.ts↔integration/catch-boundary-test.ts |
| 2 | ts↔ts | 0.222222 | 3 | remove-exports-test↔remove-exports | packages/react-router-dev/vite/remove-exports-test.ts↔packages/react-router-dev/vite/remove-exports.ts |
| 3 | ts↔ts | 0.208333 | 4 | action-test↔catch-boundary-test | integration/action-test.ts↔integration/catch-boundary-test.ts |
| 4 | ts↔ts | 0.200000 | 5 | sessions-test↔sessions | packages/react-router/__tests__/server-runtime/sessions-test.ts↔packages/react-router/lib/server-runtime/sessions.ts |
| 5 | ts↔ts | 0.197917 | 6 | catch-boundary-test↔transition-test | integration/catch-boundary-test.ts↔integration/transition-test.ts |
| 6 | ts↔ts | 0.195652 | 7 | serverHandoff↔global | packages/react-router/lib/server-runtime/serverHandoff.ts↔packages/react-router/lib/dom/global.ts |
| 7 | ts↔ts | 0.194175 | 8 | catch-boundary-data-test↔error-boundary-test | integration/catch-boundary-data-test.ts↔integration/error-boundary-test.ts |
| 8 | ts↔ts | 0.191919 | 9 | typegen-test↔generate | integration/typegen-test.ts↔packages/react-router-dev/typegen/generate.ts |
| 9 | ts↔ts | 0.191304 | 10 | action-test↔catch-boundary-data-test | integration/action-test.ts↔integration/catch-boundary-data-test.ts |
| 10 | json↔json | 0.541667 | 1 | package↔package | examples/auth/package.json↔examples/search-params/package.json |
| 11 | json↔json | 0.530612 | 2 | package↔package | examples/auth/package.json↔examples/basic/package.json |
| 12 | json↔json | 0.520833 | 3 | package↔package | examples/auth/package.json↔examples/custom-link/package.json |
| 13 | json↔json | 0.510204 | 4 | package↔package | examples/basic/package.json↔examples/custom-link/package.json |
| 14 | json↔json | 0.500000 | 5 | package↔package | examples/custom-query-parsing/package.json↔examples/lazy-loading/package.json |
| 15 | json↔json | 0.489362 | 6 | package↔package | examples/custom-filter-link/package.json↔examples/custom-link/package.json |
| 16 | json↔json | 0.479167 | 7 | package↔package | examples/auth/package.json↔examples/custom-filter-link/package.json |
| 17 | json↔json | 0.477273 | 8 | package↔package | examples/lazy-loading/package.json↔examples/multi-app/package.json |
| 18 | json↔json | 0.469388 | 9 | package↔package | examples/basic/package.json↔examples/custom-filter-link/package.json |
| 19 | json↔json | 0.468085 | 10 | package↔package | examples/custom-link/package.json↔examples/custom-query-parsing/package.json |
| 20 | ts↔tsx | 0.185484 | 1 | index↔components | packages/react-router/index.ts↔packages/react-router/lib/components.tsx |
| 21 | ts↔tsx | 0.177083 | 2 | context↔components | packages/react-router/lib/context.ts↔packages/react-router/lib/components.tsx |
| 22 | ts↔tsx | 0.176471 | 3 | global↔components-test | packages/react-router/lib/dom/global.ts↔packages/react-router/__tests__/dom/ssr/components-test.tsx |
| 23 | ts↔tsx | 0.150327 | 4 | context↔hooks | packages/react-router/lib/context.ts↔packages/react-router/lib/hooks.tsx |
| 24 | ts↔tsx | 0.150000 | 5 | single-fetch-test↔single-fetch | integration/single-fetch-test.ts↔packages/react-router/lib/dom/ssr/single-fetch.tsx |
| 25 | ts↔tsx | 0.146465 | 6 | index↔hooks | packages/react-router/index.ts↔packages/react-router/lib/hooks.tsx |
| 26 | ts↔tsx | 0.139785 | 7 | server.rsc↔browser | packages/react-router/lib/rsc/server.rsc.ts↔packages/react-router/lib/rsc/browser.tsx |
| 27 | ts↔tsx | 0.127273 | 8 | global↔hydrated-router | packages/react-router/lib/dom/global.ts↔packages/react-router/lib/dom-export/hydrated-router.tsx |
| 28 | ts↔tsx | 0.122449 | 9 | serverHandoff↔components-test | packages/react-router/lib/server-runtime/serverHandoff.ts↔packages/react-router/__tests__/dom/ssr/components-test.tsx |
| 29 | ts↔tsx | 0.121951 | 10 | rsc-test↔browser | integration/rsc/rsc-test.ts↔packages/react-router/lib/rsc/browser.tsx |
| 30 | tsx↔tsx | 0.333333 | 1 | App↔App | examples/modal/src/App.tsx↔examples/search-params/src/App.tsx |
| 31 | tsx↔tsx | 0.235294 | 2 | entry.rsc↔entry.rsc | integration/helpers/rsc-vite/src/entry.rsc.tsx↔playground/rsc-vite/src/entry.rsc.tsx |
| 32 | tsx↔tsx | 0.222222 | 3 | entry.browser↔entry.browser | integration/helpers/rsc-vite/src/entry.browser.tsx↔playground/rsc-vite/src/entry.browser.tsx |
| 33 | tsx↔tsx | 0.214286 | 4 | App↔App | examples/auth/src/App.tsx↔examples/modal/src/App.tsx |
| 34 | tsx↔tsx | 0.208877 | 5 | components↔hooks | packages/react-router/lib/components.tsx↔packages/react-router/lib/hooks.tsx |
| 35 | tsx↔tsx | 0.208333 | 6 | entry.ssr↔entry.ssr | integration/helpers/rsc-vite/src/entry.ssr.tsx↔playground/rsc-vite/src/entry.ssr.tsx |
| 36 | tsx↔tsx | 0.200000 | 7 | entry.ssr↔entry.ssr | packages/react-router-dev/config/default-rsc-entries/entry.ssr.tsx↔playground/rsc-vite/src/entry.ssr.tsx |
| 37 | tsx↔tsx | 0.190476 | 8 | useHref-basename-test↔useHref-test | packages/react-router/__tests__/useHref-basename-test.tsx↔packages/react-router/__tests__/useHref-test.tsx |
| 38 | tsx↔tsx | 0.187500 | 9 | entry.rsc↔entry.browser | integration/helpers/rsc-vite/src/entry.rsc.tsx↔playground/rsc-vite/src/entry.browser.tsx |
| 39 | tsx↔tsx | 0.176471 | 10 | App↔App | examples/custom-query-parsing/src/App.tsx↔examples/modal/src/App.tsx |
Find those pairwise changed files that have a high rank in many metrics by calculating a combined (weighted) score based on the ranks of each metric. This is useful to identify pairs of files that score high in most metrics, which indicates a strong co-change relationship.
| fileExtensionPair | filePair | combinedMetricsScore | updateCommitCountExtensionRank | updateCommitMinConfidenceExtensionRank | updateCommitJaccardSimilarityExtensionRank | updateCommitLiftExtensionRank | updateCommitCount | updateCommitMinConfidence | updateCommitJaccardSimilarity | updateCommitLift | filePairWithRelativePath | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | json↔json | package-lock↔package-lock | 43 | 15 | 7 | 15 | 6 | 13 | 0.650000 | 0.448276 | 89.463636 | examples/error-boundaries/package-lock.json↔examples/notes/package-lock.json |
| 1 | json↔json | package↔package-lock | 46 | 25 | 1 | 19 | 1 | 3 | 1.000000 | 0.428571 | 432.571429 | examples/view-transitions/package.json↔examples/view-transitions/package-lock.json |
| 2 | json↔json | package↔package | 48 | 4 | 2 | 1 | 41 | 26 | 0.702703 | 0.541667 | 57.507670 | examples/auth/package.json↔examples/search-params/package.json |
| 3 | json↔json | package↔package | 48 | 4 | 2 | 1 | 41 | 26 | 0.702703 | 0.541667 | 57.507670 | examples/auth/package.json↔examples/ssr/package.json |
| 4 | json↔json | package↔package | 48 | 4 | 2 | 1 | 41 | 26 | 0.702703 | 0.541667 | 57.507670 | examples/search-params/package.json↔examples/ssr/package.json |
| 5 | json↔json | package↔package | 49 | 8 | 5 | 5 | 31 | 22 | 0.666667 | 0.500000 | 61.171717 | examples/custom-query-parsing/package.json↔examples/lazy-loading/package.json |
| 6 | json↔json | package↔package | 49 | 8 | 5 | 5 | 31 | 22 | 0.666667 | 0.500000 | 61.171717 | examples/lazy-loading/package.json↔examples/route-objects/package.json |
| 7 | json↔json | package↔package | 49 | 8 | 5 | 5 | 31 | 22 | 0.666667 | 0.500000 | 61.171717 | examples/custom-query-parsing/package.json↔examples/route-objects/package.json |
| 8 | json↔json | package↔package | 54 | 5 | 3 | 3 | 43 | 25 | 0.694444 | 0.520833 | 56.831832 | examples/auth/package.json↔examples/custom-link/package.json |
| 9 | json↔json | package↔package | 54 | 5 | 3 | 3 | 43 | 25 | 0.694444 | 0.520833 | 56.831832 | examples/custom-link/package.json↔examples/search-params/package.json |
| 10 | tsx↔tsx | App↔App | 22 | 19 | 1 | 1 | 1 | 3 | 0.500000 | 0.333333 | 252.333333 | examples/modal/src/App.tsx↔examples/search-params/src/App.tsx |
| 11 | tsx↔tsx | App↔App | 26 | 19 | 1 | 4 | 2 | 3 | 0.500000 | 0.214286 | 137.636364 | examples/auth/src/App.tsx↔examples/modal/src/App.tsx |
| 12 | tsx↔tsx | App↔App | 26 | 19 | 1 | 4 | 2 | 3 | 0.500000 | 0.214286 | 137.636364 | examples/auth/src/App.tsx↔examples/search-params/src/App.tsx |
| 13 | tsx↔tsx | entry.browser↔entry.browser | 28 | 18 | 1 | 3 | 6 | 4 | 0.500000 | 0.222222 | 108.142857 | integration/helpers/rsc-vite/src/entry.browser.tsx↔playground/rsc-vite/src/entry.browser.tsx |
| 14 | tsx↔tsx | entry.client↔App | 32 | 19 | 1 | 9 | 3 | 3 | 0.500000 | 0.187500 | 116.461538 | examples/ssr-data-router/src/entry.client.tsx↔examples/ssr-data-router/src/App.tsx |
| 15 | tsx↔tsx | entry.rsc↔entry.rsc | 33 | 18 | 8 | 2 | 5 | 4 | 0.400000 | 0.235294 | 110.109091 | integration/helpers/rsc-vite/src/entry.rsc.tsx↔playground/rsc-vite/src/entry.rsc.tsx |
| 16 | tsx↔tsx | App↔App | 36 | 19 | 1 | 10 | 6 | 3 | 0.500000 | 0.176471 | 108.142857 | examples/custom-query-parsing/src/App.tsx↔examples/modal/src/App.tsx |
| 17 | tsx↔tsx | App↔App | 36 | 19 | 1 | 10 | 6 | 3 | 0.500000 | 0.176471 | 108.142857 | examples/custom-query-parsing/src/App.tsx↔examples/search-params/src/App.tsx |
| 18 | tsx↔tsx | entry.ssr↔entry.ssr | 42 | 17 | 6 | 6 | 13 | 5 | 0.416667 | 0.208333 | 74.215686 | integration/helpers/rsc-vite/src/entry.ssr.tsx↔playground/rsc-vite/src/entry.ssr.tsx |
| 19 | tsx↔tsx | entry.rsc↔entry.browser | 42 | 19 | 12 | 7 | 4 | 3 | 0.375000 | 0.200000 | 113.550000 | playground/rsc-vite/src/entry.rsc.tsx↔playground/rsc-vite/src/entry.browser.tsx |
| 20 | ts↔ts | vite-loader-context-test↔vite-node-env-test | 30 | 23 | 2 | 3 | 2 | 4 | 0.800000 | 0.222222 | 142.494118 | integration/vite-loader-context-test.ts↔integration/vite-node-env-test.ts |
| 21 | ts↔ts | sessions-test↔sessions | 50 | 24 | 18 | 5 | 3 | 3 | 0.375000 | 0.200000 | 113.550000 | packages/react-router/__tests__/server-runtime/sessions-test.ts↔packages/react-router/lib/server-runtime/sessions.ts |
| 22 | ts↔ts | remove-exports-test↔remove-exports | 51 | 23 | 21 | 3 | 4 | 4 | 0.363636 | 0.222222 | 100.099174 | packages/react-router-dev/vite/remove-exports-test.ts↔packages/react-router-dev/vite/remove-exports.ts |
| 23 | ts↔ts | vite-dev-custom-entry-test↔vite-absolute-base-test | 54 | 24 | 1 | 28 | 1 | 3 | 1.000000 | 0.150000 | 151.400000 | integration/vite-dev-custom-entry-test.ts↔integration/vite-absolute-base-test.ts |
| 24 | ts↔ts | vite-dotenv-test↔vite-loader-context-test | 58 | 20 | 12 | 11 | 15 | 7 | 0.411765 | 0.189189 | 46.178649 | integration/vite-dotenv-test.ts↔integration/vite-loader-context-test.ts |
| 25 | ts↔ts | serverHandoff↔global | 64 | 18 | 22 | 7 | 17 | 9 | 0.360000 | 0.195652 | 36.336000 | packages/react-router/lib/server-runtime/serverHandoff.ts↔packages/react-router/lib/dom/global.ts |
| 26 | ts↔ts | vite-dotenv-test↔vite-node-env-test | 64 | 23 | 2 | 33 | 6 | 4 | 0.800000 | 0.142857 | 89.718519 | integration/vite-dotenv-test.ts↔integration/vite-node-env-test.ts |
| 27 | ts↔ts | fileStorage↔sessions-test | 74 | 24 | 31 | 14 | 5 | 3 | 0.333333 | 0.176471 | 91.757576 | packages/react-router-node/sessions/fileStorage.ts↔packages/react-router-node/__tests__/sessions-test.ts |
| 28 | ts↔ts | loader-test↔splat-routes-test | 76 | 17 | 16 | 16 | 27 | 10 | 0.384615 | 0.172414 | 27.728938 | integration/loader-test.ts↔integration/splat-routes-test.ts |
| 29 | ts↔ts | vite-server-bundles-test↔vite-node-env-test | 76 | 22 | 1 | 45 | 8 | 5 | 1.000000 | 0.131579 | 79.684211 | integration/vite-server-bundles-test.ts↔integration/vite-node-env-test.ts |
| 30 | ts↔tsx | global↔hydrated-router | 32 | 12 | 2 | 8 | 10 | 14 | 0.466667 | 0.127273 | 15.032624 | packages/react-router/lib/dom/global.ts↔packages/react-router/lib/dom-export/hydrated-router.tsx |
| 31 | ts↔tsx | global↔components-test | 36 | 17 | 15 | 3 | 1 | 9 | 0.300000 | 0.176471 | 30.280000 | packages/react-router/lib/dom/global.ts↔packages/react-router/__tests__/dom/ssr/components-test.tsx |
| 32 | ts↔tsx | server.rsc↔browser | 52 | 13 | 17 | 7 | 15 | 13 | 0.270833 | 0.139785 | 14.139368 | packages/react-router/lib/rsc/server.rsc.ts↔packages/react-router/lib/rsc/browser.tsx |
| 33 | ts↔tsx | rsc-test↔entry.rsc | 53 | 22 | 6 | 22 | 3 | 4 | 0.363636 | 0.078431 | 25.024793 | integration/rsc/rsc-test.ts↔integration/helpers/rsc-vite/src/entry.rsc.tsx |
| 34 | ts↔tsx | serverHandoff↔components-test | 58 | 20 | 25 | 9 | 4 | 6 | 0.240000 | 0.122449 | 24.224000 | packages/react-router/lib/server-runtime/serverHandoff.ts↔packages/react-router/__tests__/dom/ssr/components-test.tsx |
| 35 | ts↔tsx | single-fetch-test↔single-fetch | 62 | 6 | 19 | 5 | 32 | 24 | 0.266667 | 0.150000 | 8.590071 | integration/single-fetch-test.ts↔packages/react-router/lib/dom/ssr/single-fetch.tsx |
| 36 | ts↔tsx | rsc-nojs-test↔server.ssr | 64 | 23 | 9 | 30 | 2 | 3 | 0.333333 | 0.066667 | 25.880342 | integration/rsc/rsc-nojs-test.ts↔packages/react-router/lib/rsc/server.ssr.tsx |
| 37 | ts↔tsx | server.rsc↔server.ssr | 65 | 16 | 22 | 11 | 16 | 10 | 0.256410 | 0.114943 | 13.386384 | packages/react-router/lib/rsc/server.rsc.ts↔packages/react-router/lib/rsc/server.ssr.tsx |
| 38 | ts↔tsx | rsc-test↔browser | 68 | 16 | 29 | 10 | 13 | 10 | 0.227273 | 0.121951 | 14.337121 | integration/rsc/rsc-test.ts↔packages/react-router/lib/rsc/browser.tsx |
| 39 | ts↔tsx | context↔components | 71 | 3 | 3 | 2 | 63 | 51 | 0.447368 | 0.177083 | 6.020585 | packages/react-router/lib/context.ts↔packages/react-router/lib/components.tsx |
A pair (count, confidence, jaccard, lift) is Pareto-optimal if there is no other pair that is better or equal in all metrics and strictly better in at least one. In other words, it is not "dominated" by any other pair.
The frontier = the “best tradeoffs.”
| filePair | combinedMetricsScore | updateCommitCount | updateCommitMinConfidence | updateCommitJaccardSimilarity | updateCommitLift | updateCommitCountExtensionRank | updateCommitMinConfidenceExtensionRank | updateCommitJaccardSimilarityExtensionRank | updateCommitLiftExtensionRank | filePairWithRelativePath | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | package↔package | 246 | 329 | 0.516484 | 0.334010 | 2.310062 | 1 | 23 | 30 | 192 | packages/react-router-dom/package.json↔packages/react-router/package.json |
| 1 | context↔components | 71 | 51 | 0.447368 | 0.177083 | 6.020585 | 3 | 3 | 2 | 63 | packages/react-router/lib/context.ts↔packages/react-router/lib/components.tsx |
| 2 | components↔hooks | 156 | 80 | 0.355556 | 0.208877 | 4.523623 | 1 | 15 | 5 | 135 | packages/react-router/lib/components.tsx↔packages/react-router/lib/hooks.tsx |
| 3 | package↔package | 49 | 22 | 0.666667 | 0.500000 | 61.171717 | 8 | 5 | 5 | 31 | examples/custom-query-parsing/package.json↔examples/lazy-loading/package.json |
| 4 | package↔package | 49 | 22 | 0.666667 | 0.500000 | 61.171717 | 8 | 5 | 5 | 31 | examples/lazy-loading/package.json↔examples/route-objects/package.json |
| 5 | package↔package | 49 | 22 | 0.666667 | 0.500000 | 61.171717 | 8 | 5 | 5 | 31 | examples/custom-query-parsing/package.json↔examples/route-objects/package.json |
| 6 | package↔package | 48 | 26 | 0.702703 | 0.541667 | 57.507670 | 4 | 2 | 1 | 41 | examples/auth/package.json↔examples/search-params/package.json |
| 7 | package↔package | 48 | 26 | 0.702703 | 0.541667 | 57.507670 | 4 | 2 | 1 | 41 | examples/auth/package.json↔examples/ssr/package.json |
| 8 | package↔package | 48 | 26 | 0.702703 | 0.541667 | 57.507670 | 4 | 2 | 1 | 41 | examples/search-params/package.json↔examples/ssr/package.json |
| 9 | hooks↔data-memory-router-test | 135 | 43 | 0.477778 | 0.150877 | 6.078618 | 2 | 2 | 16 | 115 | packages/react-router/lib/hooks.tsx↔packages/react-router/__tests__/data-memory-router-test.tsx |
| 10 | catch-boundary-test↔error-boundary-test | 87 | 27 | 0.421875 | 0.259615 | 19.066231 | 3 | 10 | 1 | 73 | integration/catch-boundary-test.ts↔integration/error-boundary-test.ts |
| 11 | vite-loader-context-test↔vite-node-env-test | 30 | 4 | 0.800000 | 0.222222 | 142.494118 | 23 | 2 | 3 | 2 | integration/vite-loader-context-test.ts↔integration/vite-node-env-test.ts |
| 12 | vite-server-bundles-test↔vite-node-env-test | 76 | 5 | 1.000000 | 0.131579 | 79.684211 | 22 | 1 | 45 | 8 | integration/vite-server-bundles-test.ts↔integration/vite-node-env-test.ts |
| 13 | package-lock↔package-lock | 62 | 6 | 0.600000 | 0.352941 | 139.753846 | 22 | 11 | 27 | 2 | examples/basic-data-router/package-lock.json↔examples/lazy-loading-router-provider/package-lock.json |
| 14 | package-lock↔package-lock | 43 | 13 | 0.650000 | 0.448276 | 89.463636 | 15 | 7 | 15 | 6 | examples/error-boundaries/package-lock.json↔examples/notes/package-lock.json |
| 15 | package↔package-lock | 46 | 3 | 1.000000 | 0.428571 | 432.571429 | 25 | 1 | 19 | 1 | examples/view-transitions/package.json↔examples/view-transitions/package-lock.json |
| fileExtensionPair | filePair | combinedMetricsScore | updateCommitCount | updateCommitMinConfidence | updateCommitJaccardSimilarity | updateCommitLift | updateCommitCountExtensionRank | updateCommitMinConfidenceExtensionRank | updateCommitJaccardSimilarityExtensionRank | updateCommitLiftExtensionRank | filePairWithRelativePath | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | ts↔ts | plugin↔router | 1498 | 6 | 0.031579 | 0.014458 | 0.413944 | 21 | 248 | 488 | 741 | packages/react-router-dev/vite/plugin.ts↔packages/react-router/lib/router/router.ts |
| 1 | json↔json | package↔package | 606 | 3 | 0.036145 | 0.010638 | 0.541811 | 25 | 96 | 215 | 270 | packages/react-router-serve/package.json↔integration/package.json |
| 2 | ts↔ts | plugin↔client-data-test | 1515 | 3 | 0.044776 | 0.010169 | 0.586935 | 24 | 241 | 510 | 740 | packages/react-router-dev/vite/plugin.ts↔integration/client-data-test.ts |
| 3 | ts↔ts | server↔vite | 1504 | 3 | 0.027778 | 0.013158 | 0.683830 | 24 | 249 | 493 | 738 | packages/react-router/lib/server-runtime/server.ts↔integration/helpers/vite.ts |
| 4 | json↔json | package↔package | 644 | 3 | 0.083333 | 0.004225 | 0.372723 | 25 | 93 | 245 | 281 | packages/react-router/package.json↔examples/ssr-data-router/package.json |
| word | frequency | |
|---|---|---|
| 0 | Michael Jackson | 1906 |
| 1 | Matt Brophy | 1775 |
| 2 | Ryan Florence | 1271 |
| 3 | Chance Strickland | 420 |
| 4 | Pedro Cattori | 405 |
| 5 | Mark Dalgleish | 386 |
| 6 | Jimmy Jia | 381 |
| 7 | Remix Run Bot | 369 |
| 8 | Tim Dorr | 340 |
| 9 | Logan McAnsh | 254 |
