-
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.621514 | 13.027888 | 127.872510 | 227.912351 | 569.254980 | 248.474104 |
| std | 97.079618 | 43.146300 | 435.736847 | 166.185271 | 477.379361 | 239.580355 |
| min | 1.000000 | 2.000000 | 2.000000 | 35.000000 | 39.000000 | 34.000000 |
| 25% | 2.000000 | 2.000000 | 5.500000 | 78.500000 | 273.000000 | 90.000000 |
| 50% | 5.000000 | 4.000000 | 23.000000 | 227.000000 | 426.000000 | 226.000000 |
| 75% | 12.000000 | 9.000000 | 66.000000 | 285.000000 | 650.000000 | 304.000000 |
| max | 1395.000000 | 580.000000 | 4870.000000 | 761.000000 | 1746.000000 | 1689.000000 |
| directoryPath | directoryParentPath | directoryName | fileCount | firstFile | mostFrequentFileExtension | authorCount | mainAuthor | secondAuthor | commitCount | daysSinceLastCommit | daysSinceLastCreation | daysSinceLastModification | lastCommitDate | lastCreationDate | lastModificationDate | maxCommitSha | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | react-router-7.13.2/examples/custom-query-parsing/types | react-router-7.13.2/examples/custom-query-parsing | types | 1 | react-router-7.13.2/examples/custom-query-parsing/types/jsurl.d.ts | ts | 3 | Logan McAnsh | Matt Brophy | 5 | 761 | 1649 | 1649 | 2024-03-27 | 2021-10-20 | 2021-10-20 | dd0de338dfb32e38d1f4b091b3442ae55515edc3 |
| 1 | react-router-7.13.2/integration/helpers/cloudflare-dev-proxy-template/app/routes | react-router-7.13.2/integration/helpers/cloudflare-dev-proxy-template/app | routes | 1 | react-router-7.13.2/integration/helpers/cloudflare-dev-proxy-template/app/routes/_index.tsx | tsx | 4 | Jacob Ebey | Mark Dalgleish | 19 | 417 | 426 | 426 | 2025-03-06 | 2025-02-24 | 2025-02-24 | f8b1a47883109f968702ff272a370070577ca2ed |
| 2 | react-router-7.13.2/integration/helpers/cloudflare-dev-proxy-template/public | react-router-7.13.2/integration/helpers/cloudflare-dev-proxy-template | public | 1 | react-router-7.13.2/integration/helpers/cloudflare-dev-proxy-template/public/favicon.ico | ico | 2 | Mark Dalgleish | Matt Brophy | 3 | 417 | 426 | 426 | 2025-03-06 | 2025-02-24 | 2025-02-24 | c838b33e3f6c41c263ee8522a336539db23d7ad5 |
| 3 | react-router-7.13.2/integration/helpers/rsc-vite-framework/app/routes | react-router-7.13.2/integration/helpers/rsc-vite-framework/app | routes | 1 | react-router-7.13.2/integration/helpers/rsc-vite-framework/app/routes/_index.tsx | tsx | 2 | Mark Dalgleish | Matt Brophy | 3 | 263 | 273 | 273 | 2025-08-07 | 2025-07-28 | 2025-07-28 | ed1196fffdf832d6e68ed17de08027065d24051e |
| 4 | react-router-7.13.2/integration/helpers/rsc-vite-framework/public | react-router-7.13.2/integration/helpers/rsc-vite-framework | public | 1 | react-router-7.13.2/integration/helpers/rsc-vite-framework/public/favicon.ico | ico | 2 | Mark Dalgleish | Matt Brophy | 3 | 263 | 273 | 273 | 2025-08-07 | 2025-07-28 | 2025-07-28 | ed1196fffdf832d6e68ed17de08027065d24051e |
| 5 | react-router-7.13.2/integration/helpers/rsc-vite/public | react-router-7.13.2/integration/helpers/rsc-vite | public | 1 | react-router-7.13.2/integration/helpers/rsc-vite/public/favicon.ico | ico | 2 | Jacob Ebey | Matt Brophy | 4 | 285 | 304 | 304 | 2025-07-16 | 2025-06-26 | 2025-06-26 | f153b191e1c52bc8fb0e485bfd5d8ec2a8752104 |
| 6 | react-router-7.13.2/integration/helpers/vite-5-template/app/routes | react-router-7.13.2/integration/helpers/vite-5-template/app | routes | 1 | react-router-7.13.2/integration/helpers/vite-5-template/app/routes/_index.tsx | tsx | 6 | Jacob Ebey | Mark Dalgleish | 21 | 493 | 496 | 496 | 2024-12-20 | 2024-12-17 | 2024-12-17 | f8b1a47883109f968702ff272a370070577ca2ed |
| 7 | react-router-7.13.2/integration/helpers/vite-5-template/public | react-router-7.13.2/integration/helpers/vite-5-template | public | 1 | react-router-7.13.2/integration/helpers/vite-5-template/public/favicon.ico | ico | 2 | Mark Dalgleish | Matt Brophy | 3 | 493 | 496 | 496 | 2024-12-20 | 2024-12-17 | 2024-12-17 | 5115991bfaef708b91dd4793831a3b2b2825a618 |
| 8 | react-router-7.13.2/integration/helpers/vite-6-template/app/routes | react-router-7.13.2/integration/helpers/vite-6-template/app | routes | 1 | react-router-7.13.2/integration/helpers/vite-6-template/app/routes/_index.tsx | tsx | 2 | Mark Dalgleish | Matt Brophy | 3 | 493 | 496 | 496 | 2024-12-20 | 2024-12-17 | 2024-12-17 | 5115991bfaef708b91dd4793831a3b2b2825a618 |
| 9 | react-router-7.13.2/integration/helpers/vite-6-template/public | react-router-7.13.2/integration/helpers/vite-6-template | public | 1 | react-router-7.13.2/integration/helpers/vite-6-template/public/favicon.ico | ico | 2 | Mark Dalgleish | Matt Brophy | 3 | 493 | 496 | 496 | 2024-12-20 | 2024-12-17 | 2024-12-17 | 5115991bfaef708b91dd4793831a3b2b2825a618 |
| 10 | react-router-7.13.2/integration/helpers/vite-7-beta-template/app/routes | react-router-7.13.2/integration/helpers/vite-7-beta-template/app | routes | 1 | react-router-7.13.2/integration/helpers/vite-7-beta-template/app/routes/_index.tsx | tsx | 2 | Mark Dalgleish | Matt Brophy | 3 | 304 | 325 | 325 | 2025-06-27 | 2025-06-05 | 2025-06-05 | d424be65a191065a6a47015f91164974ab715d62 |
| 11 | react-router-7.13.2/integration/helpers/vite-7-beta-template/public | react-router-7.13.2/integration/helpers/vite-7-beta-template | public | 1 | react-router-7.13.2/integration/helpers/vite-7-beta-template/public/favicon.ico | ico | 2 | Mark Dalgleish | Matt Brophy | 3 | 304 | 325 | 325 | 2025-06-27 | 2025-06-05 | 2025-06-05 | d424be65a191065a6a47015f91164974ab715d62 |
| 12 | react-router-7.13.2/integration/helpers/vite-plugin-cloudflare-template/app/routes | react-router-7.13.2/integration/helpers/vite-plugin-cloudflare-template/app | routes | 1 | react-router-7.13.2/integration/helpers/vite-plugin-cloudflare-template/app/routes/_index.tsx | tsx | 2 | Mark Dalgleish | Matt Brophy | 3 | 417 | 426 | 426 | 2025-03-06 | 2025-02-24 | 2025-02-24 | c838b33e3f6c41c263ee8522a336539db23d7ad5 |
| 13 | react-router-7.13.2/integration/helpers/vite-plugin-cloudflare-template/public | react-router-7.13.2/integration/helpers/vite-plugin-cloudflare-template | public | 1 | react-router-7.13.2/integration/helpers/vite-plugin-cloudflare-template/public/favicon.ico | ico | 4 | Jacob Ebey | Mark Dalgleish | 18 | 417 | 426 | 426 | 2025-03-06 | 2025-02-24 | 2025-02-24 | f8b1a47883109f968702ff272a370070577ca2ed |
| 14 | react-router-7.13.2/integration/helpers/vite-plugin-cloudflare-template/workers | react-router-7.13.2/integration/helpers/vite-plugin-cloudflare-template | workers | 1 | react-router-7.13.2/integration/helpers/vite-plugin-cloudflare-template/workers/app.ts | ts | 2 | Mark Dalgleish | Matt Brophy | 12 | 277 | 426 | 276 | 2025-07-24 | 2025-02-24 | 2025-07-24 | f77ca631ab6016e138716edf785c20d70b2855df |
| 15 | react-router-7.13.2/integration/helpers/vite-rolldown-template/app/routes | react-router-7.13.2/integration/helpers/vite-rolldown-template/app | routes | 1 | react-router-7.13.2/integration/helpers/vite-rolldown-template/app/routes/_index.tsx | tsx | 2 | Mark Dalgleish | Matt Brophy | 3 | 375 | 381 | 381 | 2025-04-17 | 2025-04-11 | 2025-04-11 | c97fd4c1e43e880787986dd23352e045ff4de4c5 |
| 16 | react-router-7.13.2/integration/helpers/vite-rolldown-template/public | react-router-7.13.2/integration/helpers/vite-rolldown-template | public | 1 | react-router-7.13.2/integration/helpers/vite-rolldown-template/public/favicon.ico | ico | 2 | Mark Dalgleish | Matt Brophy | 3 | 375 | 381 | 381 | 2025-04-17 | 2025-04-11 | 2025-04-11 | c97fd4c1e43e880787986dd23352e045ff4de4c5 |
| 17 | react-router-7.13.2/packages/create-react-router/__tests__/fixtures/basic/app/routes | react-router-7.13.2/packages/create-react-router/__tests__/fixtures/basic/app | routes | 1 | react-router-7.13.2/packages/create-react-router/__tests__/fixtures/basic/app/routes/home.tsx | tsx | 2 | Mark Dalgleish | Michael Jackson | 3 | 521 | 543 | 543 | 2024-11-22 | 2024-10-31 | 2024-10-31 | c6afcf85f2003d93e77f901e2b4ecdef5e83fd97 |
| 18 | react-router-7.13.2/packages/create-react-router/__tests__/fixtures/basic/public | react-router-7.13.2/packages/create-react-router/__tests__/fixtures/basic | public | 1 | react-router-7.13.2/packages/create-react-router/__tests__/fixtures/basic/public/favicon.ico | ico | 2 | Mark Dalgleish | Michael Jackson | 3 | 521 | 543 | 543 | 2024-11-22 | 2024-10-31 | 2024-10-31 | c6afcf85f2003d93e77f901e2b4ecdef5e83fd97 |
| 19 | react-router-7.13.2/packages/create-react-router/__tests__/fixtures/blank | react-router-7.13.2/packages/create-react-router/__tests__/fixtures | blank | 1 | react-router-7.13.2/packages/create-react-router/__tests__/fixtures/blank/package.json | json | 2 | Mark Dalgleish | Michael Jackson | 3 | 521 | 543 | 543 | 2024-11-22 | 2024-10-31 | 2024-10-31 | c6afcf85f2003d93e77f901e2b4ecdef5e83fd97 |
| 20 | react-router-7.13.2/packages/create-react-router/__tests__/fixtures/with-ignored-dir | react-router-7.13.2/packages/create-react-router/__tests__/fixtures | with-ignored-dir | 1 | react-router-7.13.2/packages/create-react-router/__tests__/fixtures/with-ignored-dir/package.json | json | 2 | Mark Dalgleish | Michael Jackson | 3 | 521 | 543 | 543 | 2024-11-22 | 2024-10-31 | 2024-10-31 | c6afcf85f2003d93e77f901e2b4ecdef5e83fd97 |
| 21 | react-router-7.13.2/packages/react-router-architect/sessions | react-router-7.13.2/packages/react-router-architect | sessions | 1 | react-router-7.13.2/packages/react-router-architect/sessions/arcTableSessionStorage.ts | ts | 3 | Mark Dalgleish | Matt Brophy | 10 | 277 | 650 | 276 | 2025-07-24 | 2024-07-16 | 2025-07-24 | eed3ebd417e2522f527eee4fba098785ceb3dcfb |
| 22 | react-router-7.13.2/packages/react-router-cloudflare/sessions | react-router-7.13.2/packages/react-router-cloudflare | sessions | 1 | react-router-7.13.2/packages/react-router-cloudflare/sessions/workersKVStorage.ts | ts | 3 | Mark Dalgleish | Matt Brophy | 10 | 277 | 650 | 276 | 2025-07-24 | 2024-07-15 | 2025-07-24 | eed3ebd417e2522f527eee4fba098785ceb3dcfb |
| 23 | react-router-7.13.2/packages/react-router-dev/__tests__/fixtures/basic/app/routes | react-router-7.13.2/packages/react-router-dev/__tests__/fixtures/basic/app | routes | 1 | react-router-7.13.2/packages/react-router-dev/__tests__/fixtures/basic/app/routes/_index.tsx | tsx | 6 | Jacob Ebey | Mark Dalgleish | 25 | 465 | 466 | 466 | 2025-01-17 | 2025-01-16 | 2025-01-16 | fbe8ac244eedb8556dd0faf00dfbe1f78e461120 |
| 24 | react-router-7.13.2/packages/react-router-dev/__tests__/fixtures/basic/public | react-router-7.13.2/packages/react-router-dev/__tests__/fixtures/basic | public | 1 | react-router-7.13.2/packages/react-router-dev/__tests__/fixtures/basic/public/favicon.ico | ico | 2 | Mark Dalgleish | Matt Brophy | 4 | 465 | 466 | 466 | 2025-01-17 | 2025-01-16 | 2025-01-16 | c364bd450e5e8811bd4d24f7e5fe5489d361a66f |
| 25 | react-router-7.13.2/packages/react-router-express/__tests__ | react-router-7.13.2/packages/react-router-express | __tests__ | 1 | react-router-7.13.2/packages/react-router-express/__tests__/server-test.ts | ts | 12 | Chance Strickland | Hiroshi Ogawa | 72 | 277 | 674 | 276 | 2025-07-24 | 2024-06-21 | 2025-07-24 | fbe8ac244eedb8556dd0faf00dfbe1f78e461120 |
| 26 | react-router-7.13.2/packages/react-router-node/__tests__ | react-router-7.13.2/packages/react-router-node | __tests__ | 1 | react-router-7.13.2/packages/react-router-node/__tests__/sessions-test.ts | ts | 9 | Alexandru Bereghici | Chance Strickland | 36 | 180 | 674 | 179 | 2025-10-29 | 2024-06-21 | 2025-10-29 | fbe8ac244eedb8556dd0faf00dfbe1f78e461120 |
| 27 | react-router-7.13.2/packages/react-router-node/sessions | react-router-7.13.2/packages/react-router-node | sessions | 1 | react-router-7.13.2/packages/react-router-node/sessions/fileStorage.ts | ts | 14 | Alex Anderson | Alexandru Bereghici | 56 | 63 | 674 | 62 | 2026-02-23 | 2024-06-21 | 2026-02-23 | fbe8ac244eedb8556dd0faf00dfbe1f78e461120 |
| 28 | react-router-7.13.2/packages/react-router/__tests__/__snapshots__ | react-router-7.13.2/packages/react-router/__tests__ | __snapshots__ | 1 | react-router-7.13.2/packages/react-router/__tests__/__snapshots__/route-matching-test.tsx.snap | snap | 3 | Chance Strickland | Matt Brophy | 7 | 761 | 1746 | 1689 | 2024-03-27 | 2021-07-15 | 2021-09-10 | eff2bd9148de1849fb93519f59262e4b53e8d823 |
| 29 | react-router-7.13.2/packages/react-router/__tests__/dom/components | react-router-7.13.2/packages/react-router/__tests__/dom | components | 1 | react-router-7.13.2/packages/react-router/__tests__/dom/components/LazyComponent.tsx | tsx | 2 | Matt Brophy | Michael Jackson | 14 | 521 | 726 | 726 | 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) = 513
Max changed files with one commit = 1061
| filesPerCommit | commitCount | |
|---|---|---|
| count | 182.000000 | 182.000000 |
| mean | 155.329670 | 58.802198 |
| std | 194.184372 | 371.993665 |
| min | 1.000000 | 1.000000 |
| 25% | 46.250000 | 1.000000 |
| 50% | 91.500000 | 2.000000 |
| 75% | 165.500000 | 8.000000 |
| max | 1061.000000 | 4578.000000 |
| filesPerCommit | commitCount | |
|---|---|---|
| 0 | 1 | 4578 |
| 1 | 2 | 1767 |
| 2 | 3 | 882 |
| 3 | 4 | 556 |
| 4 | 5 | 470 |
| 5 | 6 | 282 |
| 6 | 7 | 194 |
| 7 | 8 | 157 |
| 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 | 80 |
| 23 | 24 | 26 |
| 24 | 25 | 31 |
| 25 | 26 | 12 |
| 26 | 27 | 16 |
| 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 | 993 |
| 1 | json↔json | 556 |
| 2 | ts↔tsx | 309 |
| 3 | tsx↔tsx | 241 |
| fileExtensionPair | updateCommitCount | GroupRank | filePair | filePairWithRelativePath | |
|---|---|---|---|---|---|
| 0 | ts↔ts | 38 | 1 | index↔context | packages/react-router/index.ts↔packages/react-router/lib/context.ts |
| 1 | ts↔ts | 31 | 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 | action-test↔catch-boundary-test | integration/action-test.ts↔integration/catch-boundary-test.ts |
| 4 | ts↔ts | 22 | 5 | plugin↔vite-prerender-test | packages/react-router-dev/vite/plugin.ts↔integration/vite-prerender-test.ts |
| 5 | ts↔ts | 21 | 6 | vite↔vite-css-test | integration/helpers/vite.ts↔integration/vite-css-test.ts |
| 6 | ts↔ts | 20 | 7 | action-test↔error-boundary-test | integration/action-test.ts↔integration/error-boundary-test.ts |
| 7 | ts↔ts | 19 | 8 | index↔router | packages/react-router/index.ts↔packages/react-router/lib/router/router.ts |
| 8 | ts↔ts | 18 | 9 | index↔utils | packages/react-router/index.ts↔packages/react-router/lib/router/utils.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 | 70 | 1 | index↔components | packages/react-router/index.ts↔packages/react-router/lib/components.tsx |
| 21 | ts↔tsx | 59 | 2 | index↔hooks | packages/react-router/index.ts↔packages/react-router/lib/hooks.tsx |
| 22 | ts↔tsx | 52 | 3 | context↔components | packages/react-router/lib/context.ts↔packages/react-router/lib/components.tsx |
| 23 | ts↔tsx | 47 | 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 | 25 | 6 | router↔lib | packages/react-router/lib/router/router.ts↔packages/react-router/lib/dom/lib.tsx |
| 26 | ts↔tsx | 24 | 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 | 18 | 9 | server↔hydrated-router | packages/react-router/lib/server-runtime/server.ts↔packages/react-router/lib/dom-export/hydrated-router.tsx |
| 29 | ts↔tsx | 17 | 10 | index↔hydrated-router | packages/react-router/index.ts↔packages/react-router/lib/dom-export/hydrated-router.tsx |
| 30 | tsx↔tsx | 81 | 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↔lib | packages/react-router/lib/components.tsx↔packages/react-router/lib/dom/lib.tsx |
| 33 | tsx↔tsx | 22 | 4 | lib↔hooks | packages/react-router/lib/dom/lib.tsx↔packages/react-router/lib/hooks.tsx |
| 34 | tsx↔tsx | 18 | 5 | components↔hydrated-router | packages/react-router/lib/components.tsx↔packages/react-router/lib/dom-export/hydrated-router.tsx |
| 35 | tsx↔tsx | 17 | 6 | lib↔server | packages/react-router/lib/dom/lib.tsx↔packages/react-router/lib/dom/server.tsx |
| 36 | tsx↔tsx | 14 | 7 | hydrated-router↔lib | packages/react-router/lib/dom-export/hydrated-router.tsx↔packages/react-router/lib/dom/lib.tsx |
| 37 | tsx↔tsx | 13 | 8 | data-browser-router-test↔lib | packages/react-router/__tests__/dom/data-browser-router-test.tsx↔packages/react-router/lib/dom/lib.tsx |
| 38 | tsx↔tsx | 12 | 9 | components↔useNavigate-test | packages/react-router/lib/components.tsx↔packages/react-router/__tests__/useNavigate-test.tsx |
| 39 | tsx↔tsx | 11 | 10 | lib↔components | packages/react-router/lib/dom/lib.tsx↔packages/react-router/lib/dom/ssr/components.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.424242 | 9 | router-test↔router | packages/react-router/__tests__/router/router-test.ts↔packages/react-router/lib/router/router.ts |
| 9 | ts↔ts | 0.423729 | 10 | catch-boundary-data-test↔catch-boundary-test | integration/catch-boundary-data-test.ts↔integration/catch-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/basic/package.json↔examples/custom-link/package.json |
| 13 | json↔json | 0.676471 | 4 | package↔package | examples/auth/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/modal/package.json↔examples/custom-link/package.json |
| 18 | json↔json | 0.621622 | 9 | package↔package | examples/modal/package.json↔examples/auth/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.440678 | 3 | context↔components | packages/react-router/lib/context.ts↔packages/react-router/lib/components.tsx |
| 23 | ts↔tsx | 0.398305 | 4 | context↔hooks | packages/react-router/lib/context.ts↔packages/react-router/lib/hooks.tsx |
| 24 | ts↔tsx | 0.384615 | 5 | index↔entry.client | packages/react-router/index.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 | router↔partial-hydration-test | packages/react-router/lib/router/router.ts↔packages/react-router/__tests__/dom/partial-hydration-test.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.434783 | 3 | components↔app | packages/react-router/lib/components.tsx↔examples/data-router/src/app.tsx |
| 33 | tsx↔tsx | 0.428571 | 4 | navigate-test↔same-component-lifecycle-test | packages/react-router/__tests__/navigate-test.tsx↔packages/react-router/__tests__/same-component-lifecycle-test.tsx |
| 34 | tsx↔tsx | 0.416667 | 5 | components↔client-on-error-test | packages/react-router/lib/components.tsx↔packages/react-router/__tests__/dom/client-on-error-test.tsx |
| 35 | tsx↔tsx | 0.409091 | 6 | hooks↔entry.server | packages/react-router/lib/hooks.tsx↔examples/ssr-data-router/src/entry.server.tsx |
| 36 | tsx↔tsx | 0.400000 | 7 | entry.rsc↔entry.rsc | integration/helpers/rsc-vite/src/entry.rsc.tsx↔playground/rsc-vite/src/entry.rsc.tsx |
| 37 | tsx↔tsx | 0.391304 | 8 | data-memory-router-test↔app | packages/react-router/__tests__/data-memory-router-test.tsx↔examples/data-router/src/app.tsx |
| 38 | tsx↔tsx | 0.388889 | 9 | components↔data-memory-router-test | packages/react-router/lib/components.tsx↔packages/react-router/__tests__/data-memory-router-test.tsx |
| 39 | tsx↔tsx | 0.384615 | 10 | data-memory-router-test↔entry.client | packages/react-router/__tests__/data-memory-router-test.tsx↔examples/ssr-data-router/src/entry.client.tsx |
| fileExtensionPair | updateCommitLift | GroupRank | filePair | filePairWithRelativePath | |
|---|---|---|---|---|---|
| 0 | ts↔ts | 152.750000 | 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 | 143.764706 | 2 | vite-loader-context-test↔vite-node-env-test | integration/vite-loader-context-test.ts↔integration/vite-node-env-test.ts |
| 2 | ts↔ts | 114.562500 | 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.991736 | 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 | 90.518519 | 5 | vite-dotenv-test↔vite-node-env-test | integration/vite-dotenv-test.ts↔integration/vite-node-env-test.ts |
| 5 | ts↔ts | 88.125000 | 6 | routes↔routes | packages/react-router-dev/config/routes.ts↔packages/react-router-dev/routes.ts |
| 6 | ts↔ts | 83.318182 | 7 | fileStorage↔sessions-test | packages/react-router-node/sessions/fileStorage.ts↔packages/react-router-node/__tests__/sessions-test.ts |
| 7 | ts↔ts | 80.394737 | 8 | vite-server-bundles-test↔vite-node-env-test | integration/vite-server-bundles-test.ts↔integration/vite-node-env-test.ts |
| 8 | ts↔ts | 76.375000 | 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 | 71.046512 | 10 | vite-hmr-hdr-test↔vite-node-env-test | integration/vite-hmr-hdr-test.ts↔integration/vite-node-env-test.ts |
| 10 | json↔json | 436.428571 | 1 | package↔package-lock | examples/view-transitions/package.json↔examples/view-transitions/package-lock.json |
| 11 | json↔json | 141.000000 | 2 | package-lock↔package-lock | examples/basic-data-router/package-lock.json↔examples/lazy-loading-router-provider/package-lock.json |
| 12 | json↔json | 101.833333 | 3 | package-lock↔package-lock | examples/basic-data-router/package-lock.json↔examples/navigation-blocking/package-lock.json |
| 13 | json↔json | 96.473684 | 4 | package-lock↔package-lock | examples/basic-data-router/package-lock.json↔examples/custom-filter-link/package-lock.json |
| 14 | json↔json | 91.650000 | 5 | package-lock↔package-lock | examples/basic-data-router/package-lock.json↔examples/custom-link/package-lock.json |
| 15 | json↔json | 90.261364 | 6 | package-lock↔package-lock | examples/error-boundaries/package-lock.json↔examples/notes/package-lock.json |
| 16 | json↔json | 88.125000 | 7 | package↔package-lock | examples/lazy-loading-router-provider/package.json↔examples/lazy-loading-router-provider/package-lock.json |
| 17 | json↔json | 87.285714 | 8 | package-lock↔package-lock | examples/auth/package-lock.json↔examples/basic-data-router/package-lock.json |
| 18 | json↔json | 84.567474 | 9 | package↔package | examples/error-boundaries/package.json↔examples/notes/package.json |
| 19 | json↔json | 83.318182 | 10 | package-lock↔package-lock | examples/basic-data-router/package-lock.json↔examples/error-boundaries/package-lock.json |
| 20 | ts↔tsx | 30.550000 | 1 | global↔components-test | packages/react-router/lib/dom/global.ts↔packages/react-router/__tests__/dom/ssr/components-test.tsx |
| 21 | ts↔tsx | 24.686869 | 2 | rsc-test↔entry.rsc | integration/rsc/rsc-test.ts↔integration/helpers/rsc-vite/src/entry.rsc.tsx |
| 22 | ts↔tsx | 24.440000 | 3 | serverHandoff↔components-test | packages/react-router/lib/server-runtime/serverHandoff.ts↔packages/react-router/__tests__/dom/ssr/components-test.tsx |
| 23 | ts↔tsx | 23.682171 | 4 | rsc-nojs-test↔server.ssr | integration/rsc/rsc-nojs-test.ts↔packages/react-router/lib/rsc/server.ssr.tsx |
| 24 | ts↔tsx | 18.858025 | 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 | 17.900391 | 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 | 16.972222 | 7 | rsc-test↔entry.ssr | integration/rsc/rsc-test.ts↔packages/react-router-dev/config/default-rsc-entries/entry.ssr.tsx |
| 27 | ts↔tsx | 16.972222 | 8 | index↔server | packages/react-router-dom/index.ts↔packages/react-router/lib/dom/server.tsx |
| 28 | ts↔tsx | 14.697595 | 9 | global↔hydrated-router | packages/react-router/lib/dom/global.ts↔packages/react-router/lib/dom-export/hydrated-router.tsx |
| 29 | ts↔tsx | 14.547619 | 10 | rsc-test↔entry.browser | integration/rsc/rsc-test.ts↔integration/helpers/rsc-vite/src/entry.browser.tsx |
| 30 | tsx↔tsx | 169.722222 | 1 | App↔App | examples/modal/src/App.tsx↔examples/search-params/src/App.tsx |
| 31 | tsx↔tsx | 138.863636 | 2 | App↔App | examples/auth/src/App.tsx↔examples/search-params/src/App.tsx |
| 32 | tsx↔tsx | 117.500000 | 3 | entry.client↔App | examples/ssr-data-router/src/entry.client.tsx↔examples/ssr-data-router/src/App.tsx |
| 33 | tsx↔tsx | 114.562500 | 4 | entry.rsc↔entry.browser | playground/rsc-vite/src/entry.rsc.tsx↔playground/rsc-vite/src/entry.browser.tsx |
| 34 | tsx↔tsx | 111.090909 | 5 | entry.rsc↔entry.rsc | integration/helpers/rsc-vite/src/entry.rsc.tsx↔playground/rsc-vite/src/entry.rsc.tsx |
| 35 | tsx↔tsx | 109.107143 | 6 | App↔App | examples/custom-query-parsing/src/App.tsx↔examples/search-params/src/App.tsx |
| 36 | tsx↔tsx | 109.107143 | 7 | entry.browser↔entry.browser | integration/helpers/rsc-vite/src/entry.browser.tsx↔playground/rsc-vite/src/entry.browser.tsx |
| 37 | tsx↔tsx | 104.147727 | 8 | entry.rsc↔entry.browser | integration/helpers/rsc-vite/src/entry.rsc.tsx↔playground/rsc-vite/src/entry.browser.tsx |
| 38 | tsx↔tsx | 101.833333 | 9 | Router-test↔descendant-routes-warning-test | packages/react-router/__tests__/Router-test.tsx↔packages/react-router/__tests__/descendant-routes-warning-test.tsx |
| 39 | tsx↔tsx | 92.575758 | 10 | App↔App | examples/modal/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/custom-query-parsing/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.184211 | 1 | index↔components | packages/react-router/index.ts↔packages/react-router/lib/components.tsx |
| 21 | ts↔tsx | 0.176471 | 2 | global↔components-test | packages/react-router/lib/dom/global.ts↔packages/react-router/__tests__/dom/ssr/components-test.tsx |
| 22 | ts↔tsx | 0.175676 | 3 | context↔components | packages/react-router/lib/context.ts↔packages/react-router/lib/components.tsx |
| 23 | ts↔tsx | 0.149206 | 4 | context↔hooks | packages/react-router/lib/context.ts↔packages/react-router/lib/hooks.tsx |
| 24 | ts↔tsx | 0.147239 | 5 | single-fetch-test↔single-fetch | integration/single-fetch-test.ts↔packages/react-router/lib/dom/ssr/single-fetch.tsx |
| 25 | ts↔tsx | 0.145679 | 6 | index↔hooks | packages/react-router/index.ts↔packages/react-router/lib/hooks.tsx |
| 26 | ts↔tsx | 0.145631 | 7 | server.rsc↔browser | packages/react-router/lib/rsc/server.rsc.ts↔packages/react-router/lib/rsc/browser.tsx |
| 27 | ts↔tsx | 0.125000 | 8 | server.rsc↔server.ssr | packages/react-router/lib/rsc/server.rsc.ts↔packages/react-router/lib/rsc/server.ssr.tsx |
| 28 | ts↔tsx | 0.123894 | 9 | global↔hydrated-router | packages/react-router/lib/dom/global.ts↔packages/react-router/lib/dom-export/hydrated-router.tsx |
| 29 | ts↔tsx | 0.122449 | 10 | serverHandoff↔components-test | packages/react-router/lib/server-runtime/serverHandoff.ts↔packages/react-router/__tests__/dom/ssr/components-test.tsx |
| 30 | tsx↔tsx | 0.250000 | 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/search-params/src/App.tsx |
| 34 | tsx↔tsx | 0.208333 | 5 | entry.ssr↔entry.ssr | integration/helpers/rsc-vite/src/entry.ssr.tsx↔playground/rsc-vite/src/entry.ssr.tsx |
| 35 | tsx↔tsx | 0.206107 | 6 | components↔hooks | packages/react-router/lib/components.tsx↔packages/react-router/lib/hooks.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/modal/src/App.tsx↔examples/auth/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 | 42 | 15 | 7 | 14 | 6 | 13 | 0.650000 | 0.448276 | 90.261364 | examples/error-boundaries/package-lock.json↔examples/notes/package-lock.json |
| 1 | json↔json | package↔package-lock | 45 | 25 | 1 | 18 | 1 | 3 | 1.000000 | 0.428571 | 436.428571 | examples/view-transitions/package.json↔examples/view-transitions/package-lock.json |
| 2 | json↔json | package↔package | 46 | 4 | 2 | 1 | 39 | 26 | 0.702703 | 0.541667 | 58.020453 | examples/auth/package.json↔examples/search-params/package.json |
| 3 | json↔json | package↔package | 46 | 4 | 2 | 1 | 39 | 26 | 0.702703 | 0.541667 | 58.020453 | examples/search-params/package.json↔examples/ssr/package.json |
| 4 | json↔json | package↔package | 46 | 4 | 2 | 1 | 39 | 26 | 0.702703 | 0.541667 | 58.020453 | examples/auth/package.json↔examples/ssr/package.json |
| 5 | json↔json | package↔package | 49 | 8 | 5 | 5 | 31 | 22 | 0.666667 | 0.500000 | 61.717172 | 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.717172 | 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.717172 | examples/custom-query-parsing/package.json↔examples/route-objects/package.json |
| 8 | json↔json | package↔package | 53 | 5 | 3 | 3 | 42 | 25 | 0.694444 | 0.520833 | 57.338589 | examples/auth/package.json↔examples/custom-link/package.json |
| 9 | json↔json | package↔package | 53 | 5 | 3 | 3 | 42 | 25 | 0.694444 | 0.520833 | 57.338589 | examples/custom-link/package.json↔examples/search-params/package.json |
| 10 | tsx↔tsx | App↔App | 21 | 18 | 1 | 1 | 1 | 3 | 0.500000 | 0.250000 | 169.722222 | examples/modal/src/App.tsx↔examples/search-params/src/App.tsx |
| 11 | tsx↔tsx | App↔App | 25 | 18 | 1 | 4 | 2 | 3 | 0.500000 | 0.214286 | 138.863636 | examples/auth/src/App.tsx↔examples/search-params/src/App.tsx |
| 12 | tsx↔tsx | entry.browser↔entry.browser | 28 | 17 | 1 | 3 | 7 | 4 | 0.500000 | 0.222222 | 109.107143 | integration/helpers/rsc-vite/src/entry.browser.tsx↔playground/rsc-vite/src/entry.browser.tsx |
| 13 | tsx↔tsx | entry.rsc↔entry.rsc | 31 | 17 | 7 | 2 | 5 | 4 | 0.400000 | 0.235294 | 111.090909 | integration/helpers/rsc-vite/src/entry.rsc.tsx↔playground/rsc-vite/src/entry.rsc.tsx |
| 14 | tsx↔tsx | entry.client↔App | 31 | 18 | 1 | 9 | 3 | 3 | 0.500000 | 0.187500 | 117.500000 | examples/ssr-data-router/src/entry.client.tsx↔examples/ssr-data-router/src/App.tsx |
| 15 | tsx↔tsx | App↔App | 35 | 18 | 1 | 10 | 6 | 3 | 0.500000 | 0.176471 | 109.107143 | examples/custom-query-parsing/src/App.tsx↔examples/search-params/src/App.tsx |
| 16 | tsx↔tsx | entry.rsc↔entry.browser | 40 | 18 | 11 | 7 | 4 | 3 | 0.375000 | 0.200000 | 114.562500 | playground/rsc-vite/src/entry.rsc.tsx↔playground/rsc-vite/src/entry.browser.tsx |
| 17 | tsx↔tsx | entry.ssr↔entry.ssr | 41 | 16 | 5 | 5 | 15 | 5 | 0.416667 | 0.208333 | 74.877451 | integration/helpers/rsc-vite/src/entry.ssr.tsx↔playground/rsc-vite/src/entry.ssr.tsx |
| 18 | tsx↔tsx | entry.rsc↔entry.browser | 46 | 18 | 11 | 9 | 8 | 3 | 0.375000 | 0.187500 | 104.147727 | integration/helpers/rsc-vite/src/entry.rsc.tsx↔playground/rsc-vite/src/entry.browser.tsx |
| 19 | tsx↔tsx | descendant-routes-splat-matching-test↔layout-routes-test | 50 | 15 | 1 | 9 | 25 | 6 | 0.500000 | 0.187500 | 58.750000 | packages/react-router/__tests__/descendant-routes-splat-matching-test.tsx↔packages/react-router/__tests__/layout-routes-test.tsx |
| 20 | ts↔ts | vite-loader-context-test↔vite-node-env-test | 30 | 23 | 2 | 3 | 2 | 4 | 0.800000 | 0.222222 | 143.764706 | 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 | 114.562500 | 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.991736 | 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 | 52 | 24 | 1 | 26 | 1 | 3 | 1.000000 | 0.150000 | 152.750000 | 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.590414 | integration/vite-dotenv-test.ts↔integration/vite-loader-context-test.ts |
| 25 | ts↔ts | vite-dotenv-test↔vite-node-env-test | 60 | 23 | 2 | 30 | 5 | 4 | 0.800000 | 0.142857 | 90.518519 | integration/vite-dotenv-test.ts↔integration/vite-node-env-test.ts |
| 26 | ts↔ts | serverHandoff↔global | 64 | 18 | 22 | 7 | 17 | 9 | 0.360000 | 0.195652 | 36.660000 | packages/react-router/lib/server-runtime/serverHandoff.ts↔packages/react-router/lib/dom/global.ts |
| 27 | ts↔ts | vite-server-bundles-test↔vite-node-env-test | 74 | 22 | 1 | 43 | 8 | 5 | 1.000000 | 0.131579 | 80.394737 | integration/vite-server-bundles-test.ts↔integration/vite-node-env-test.ts |
| 28 | ts↔ts | vite-dev-test↔vite-dev-custom-entry-test | 76 | 17 | 6 | 24 | 29 | 10 | 0.500000 | 0.153846 | 27.772727 | integration/vite-dev-test.ts↔integration/vite-dev-custom-entry-test.ts |
| 29 | ts↔ts | loader-test↔splat-routes-test | 76 | 17 | 16 | 15 | 28 | 10 | 0.384615 | 0.172414 | 27.976190 | integration/loader-test.ts↔integration/splat-routes-test.ts |
| 30 | ts↔tsx | global↔hydrated-router | 33 | 13 | 2 | 9 | 9 | 14 | 0.466667 | 0.123894 | 14.697595 | packages/react-router/lib/dom/global.ts↔packages/react-router/lib/dom-export/hydrated-router.tsx |
| 31 | ts↔tsx | global↔components-test | 34 | 18 | 13 | 2 | 1 | 9 | 0.300000 | 0.176471 | 30.550000 | packages/react-router/lib/dom/global.ts↔packages/react-router/__tests__/dom/ssr/components-test.tsx |
| 32 | ts↔tsx | server.rsc↔browser | 46 | 12 | 14 | 7 | 13 | 15 | 0.283019 | 0.145631 | 13.301887 | packages/react-router/lib/rsc/server.rsc.ts↔packages/react-router/lib/rsc/browser.tsx |
| 33 | ts↔tsx | server.rsc↔server.ssr | 52 | 15 | 15 | 8 | 14 | 12 | 0.279070 | 0.125000 | 13.116279 | packages/react-router/lib/rsc/server.rsc.ts↔packages/react-router/lib/rsc/server.ssr.tsx |
| 34 | ts↔tsx | rsc-test↔entry.rsc | 53 | 23 | 6 | 22 | 2 | 4 | 0.363636 | 0.076923 | 24.686869 | integration/rsc/rsc-test.ts↔integration/helpers/rsc-vite/src/entry.rsc.tsx |
| 35 | ts↔tsx | serverHandoff↔components-test | 55 | 21 | 21 | 10 | 3 | 6 | 0.240000 | 0.122449 | 24.440000 | packages/react-router/lib/server-runtime/serverHandoff.ts↔packages/react-router/__tests__/dom/ssr/components-test.tsx |
| 36 | ts↔tsx | single-fetch-test↔single-fetch | 61 | 7 | 18 | 5 | 31 | 24 | 0.266667 | 0.147239 | 8.398625 | integration/single-fetch-test.ts↔packages/react-router/lib/dom/ssr/single-fetch.tsx |
| 37 | ts↔tsx | entry↔routes-test-stub | 64 | 19 | 20 | 13 | 12 | 8 | 0.250000 | 0.102564 | 14.143519 | packages/react-router/lib/dom/ssr/entry.ts↔packages/react-router/lib/dom/ssr/routes-test-stub.tsx |
| 38 | ts↔tsx | context↔components | 69 | 3 | 3 | 3 | 60 | 52 | 0.440678 | 0.175676 | 5.853353 | packages/react-router/lib/context.ts↔packages/react-router/lib/components.tsx |
| 39 | ts↔tsx | rsc-nojs-test↔server.ssr | 71 | 24 | 9 | 34 | 4 | 3 | 0.333333 | 0.061224 | 23.682171 | integration/rsc/rsc-nojs-test.ts↔packages/react-router/lib/rsc/server.ssr.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 | 252 | 329 | 0.513261 | 0.331319 | 2.302512 | 1 | 24 | 33 | 194 | packages/react-router-dom/package.json↔packages/react-router/package.json |
| 1 | context↔components | 69 | 52 | 0.440678 | 0.175676 | 5.853353 | 3 | 3 | 3 | 60 | packages/react-router/lib/context.ts↔packages/react-router/lib/components.tsx |
| 2 | components↔hooks | 163 | 81 | 0.352174 | 0.206107 | 4.409391 | 1 | 14 | 6 | 142 | packages/react-router/lib/components.tsx↔packages/react-router/lib/hooks.tsx |
| 3 | package↔package | 49 | 22 | 0.666667 | 0.500000 | 61.717172 | 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.717172 | 8 | 5 | 5 | 31 | examples/lazy-loading/package.json↔examples/route-objects/package.json |
| 5 | package↔package | 49 | 22 | 0.666667 | 0.500000 | 61.717172 | 8 | 5 | 5 | 31 | examples/custom-query-parsing/package.json↔examples/route-objects/package.json |
| 6 | package↔package | 46 | 26 | 0.702703 | 0.541667 | 58.020453 | 4 | 2 | 1 | 39 | examples/auth/package.json↔examples/search-params/package.json |
| 7 | package↔package | 46 | 26 | 0.702703 | 0.541667 | 58.020453 | 4 | 2 | 1 | 39 | examples/search-params/package.json↔examples/ssr/package.json |
| 8 | package↔package | 46 | 26 | 0.702703 | 0.541667 | 58.020453 | 4 | 2 | 1 | 39 | examples/auth/package.json↔examples/ssr/package.json |
| 9 | hooks↔data-memory-router-test | 139 | 43 | 0.477778 | 0.147766 | 5.982013 | 2 | 2 | 18 | 117 | 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.236241 | 3 | 11 | 1 | 72 | integration/catch-boundary-test.ts↔integration/error-boundary-test.ts |
| 11 | vite-server-bundles-test↔vite-node-env-test | 74 | 5 | 1.000000 | 0.131579 | 80.394737 | 22 | 1 | 43 | 8 | integration/vite-server-bundles-test.ts↔integration/vite-node-env-test.ts |
| 12 | vite-loader-context-test↔vite-node-env-test | 30 | 4 | 0.800000 | 0.222222 | 143.764706 | 23 | 2 | 3 | 2 | integration/vite-loader-context-test.ts↔integration/vite-node-env-test.ts |
| 13 | package-lock↔package-lock | 65 | 6 | 0.600000 | 0.352941 | 141.000000 | 22 | 12 | 29 | 2 | examples/basic-data-router/package-lock.json↔examples/lazy-loading-router-provider/package-lock.json |
| 14 | package-lock↔package-lock | 42 | 13 | 0.650000 | 0.448276 | 90.261364 | 15 | 7 | 14 | 6 | examples/error-boundaries/package-lock.json↔examples/notes/package-lock.json |
| 15 | package↔package-lock | 45 | 3 | 1.000000 | 0.428571 | 436.428571 | 25 | 1 | 18 | 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 | 1515 | 6 | 0.030457 | 0.014118 | 0.397631 | 21 | 247 | 488 | 759 | packages/react-router-dev/vite/plugin.ts↔packages/react-router/lib/router/router.ts |
| 1 | ts↔ts | plugin↔client-data-test | 1528 | 3 | 0.044776 | 0.010067 | 0.584577 | 24 | 239 | 507 | 758 | packages/react-router-dev/vite/plugin.ts↔integration/client-data-test.ts |
| 2 | ts↔ts | server↔vite | 1520 | 3 | 0.027273 | 0.013043 | 0.677384 | 24 | 248 | 492 | 756 | packages/react-router/lib/server-runtime/server.ts↔integration/helpers/vite.ts |
| 3 | json↔json | package↔package | 619 | 3 | 0.036145 | 0.010490 | 0.536028 | 25 | 101 | 220 | 273 | packages/react-router-serve/package.json↔integration/package.json |
| 4 | json↔json | package↔package | 657 | 3 | 0.083333 | 0.004202 | 0.373837 | 25 | 98 | 250 | 284 | packages/react-router/package.json↔examples/ssr-data-router/package.json |
| word | frequency | |
|---|---|---|
| 0 | Michael Jackson | 1906 |
| 1 | Matt Brophy | 1792 |
| 2 | Ryan Florence | 1271 |
| 3 | Chance Strickland | 420 |
| 4 | Pedro Cattori | 405 |
| 5 | Mark Dalgleish | 386 |
| 6 | Jimmy Jia | 381 |
| 7 | Remix Run Bot | 378 |
| 8 | Tim Dorr | 342 |
| 9 | Logan McAnsh | 254 |
