Code Ownership

Ownership is measured by how many commits each author made to each file in the current tree. It highlights bus-factor risk (files only one person has ever touched) and where knowledge is concentrated. The bus factor is the smallest number of people who are, between them, primary owner of more than half of the files.

Files Tracked
2,479
in the current tree
Bus Factor
1
Daniel Roe is primary owner of 1,927 of 2,479 files
Single-Owner Files
1,621
65.4% of tracked files
Contributors
573
authors who changed files

Bus factor risk — single-owner files

Files only one author has ever changed. The more a file has changed, the more knowledge is at risk if that person leaves.

FileSole ownerCommits
packages/nitro-server/src/vite.tsDaniel Roe17
packages/nuxt/src/server/index.tsDaniel Roe17
packages/nitro-server/src/runtime/server.tsDaniel Roe16
docs/3.guide/6.going-further/5.server-imports.mdDaniel Roe15
packages/nitro-server/src/imports.tsDaniel Roe15
docs/3.guide/4.modules/9.server-compatibility.mdDaniel Roe12
packages/schema/src/types/server.tsDaniel Roe12
packages/nuxt/test/server-parity.test.tsDaniel Roe12
test/fixtures/minimal/package.jsonDaniel Roe12
packages/nitro-server/src/compat.tsDaniel Roe11
Table: the 100 most-changed of 1,621 single-owner files
FileSole ownerCommits
packages/nitro-server/src/vite.tsDaniel Roe17
packages/nuxt/src/server/index.tsDaniel Roe17
packages/nitro-server/src/runtime/server.tsDaniel Roe16
docs/3.guide/6.going-further/5.server-imports.mdDaniel Roe15
packages/nitro-server/src/imports.tsDaniel Roe15
docs/3.guide/4.modules/9.server-compatibility.mdDaniel Roe12
packages/schema/src/types/server.tsDaniel Roe12
packages/nuxt/test/server-parity.test.tsDaniel Roe12
test/fixtures/minimal/package.jsonDaniel Roe12
packages/nitro-server/src/compat.tsDaniel Roe11
packages/nitro-server/test/compat.test.tsDaniel Roe11
packages/nitro-server/src/runtime/utils/renderer/options.tsDaniel Roe10
packages/schema/src/types/nitro.tsDaniel Roe10
test/matrix.tsDaniel Roe10
packages/nuxt/test/builder.test.tsDaniel Roe10
packages/nuxt/src/runtime/server/renderer/runtime.tsDaniel Roe9
test/fixtures/hmr/package.jsonDaniel Roe9
packages/kit/test/nitro.test.tsDaniel Roe8
packages/kit/src/nitro-types.tsDaniel Roe8
packages/vite/src/plugins/stable-entry.tsDaniel Roe8
packages/nuxt/src/runtime/server/renderer/app.tsDaniel Roe7
packages/nitro-server/src/internal.d.tsDaniel Roe7
packages/vite-server/src/runtime/dev-error.tsDaniel Roe7
packages/nitro-server/test/server.test.tsDaniel Roe7
packages/nuxt/test/server-surface.test.tsDaniel Roe7
packages/kit/src/internal/renderer.tsDaniel Roe7
packages/nitro-server/test/nitro-types.spec.tsDaniel Roe7
packages/vite/src/plugins/resolved-externals.tsDaniel Roe7
.github/ISSUE_TEMPLATE/feature-request.ymlDaniel Roe7
packages/nuxt/src/core/utils/route-rules.tsDaniel Roe6
packages/nitro-server/src/legacy.tsDaniel Roe6
packages/nuxt/src/build-stubs.d.tsDaniel Roe6
packages/vite-server/src/dev.tsDaniel Roe6
packages/vite-server/package.jsonDaniel Roe6
packages/nitro-server/tsdown.config.tsDaniel Roe6
packages/kit/src/internal/server-build.tsDaniel Roe6
test/e2e/suspense.test.tsDaniel Roe6
packages/nuxt/src/core/plugins/extract-async-data-handlers.tsDaniel Roe6
test/fixtures/minimal-pages/package.jsonDaniel Roe6
packages/nuxt/test/virtual.test.tsDaniel Roe6
packages/schema/src/config/esbuild.tsDaniel Roe6
packages/nuxt/test/route-rules-template.test.tsDaniel Roe5
packages/nitro-server/src/auto-imports.tsDaniel Roe5
packages/nitro-server/test/auto-imports.test.tsDaniel Roe5
packages/nuxt/src/build-stub-nuxt-config.d.tsDaniel Roe5
packages/vite/test/public-dirs.test.tsDaniel Roe5
packages/kit/test/nitro-types.spec.tsDaniel Roe5
packages/vite-server/src/prerender.tsDaniel Roe5
packages/kit/test/renderer.test.tsDaniel Roe5
packages/nuxt/src/server/session.tsDaniel Roe5
scripts/check-public-api.tsDaniel Roe5
packages/kit/test/build.test.tsDaniel Roe5
packages/nuxt/tsconfig.build.jsonDaniel Roe5
packages/nitro-server/src/runtime/middleware/base-url.tsDaniel Roe5
scripts/notify-resolved-issues.tsDaniel Roe5
packages/nuxt/test/build-plugins.bench.tsDaniel Roe5
packages/vite/src/plugins/module-preload-polyfill.tsDaniel Roe5
packages/vite/src/plugins/runtime-paths.tsDaniel Roe5
packages/nitro-server/src/diagnostics.tsDaniel Roe4
packages/vite/src/utils/css.tsDaniel Roe4
packages/nuxt/src/app/types/fetch.tsDaniel Roe4
test/vite-server-spa.test.tsDaniel Roe4
packages/nuxt/src/runtime/server/renderer/error.tsDaniel Roe4
test/fixtures/basic/server/api/portable-extras/[id].tsDaniel Roe4
test/renderer/standalone.test.tsDaniel Roe4
test/e2e/global.setup.tsDaniel Roe4
test/e2e/global.teardown.tsDaniel Roe4
packages/schema/test/nitro-types.spec.tsDaniel Roe4
test/e2e/test-utils.tsDaniel Roe4
packages/vite-server/src/output.tsDaniel Roe4
packages/nuxt/src/runtime/server/renderer/early-404.tsDaniel Roe4
packages/nitro-server/src/runtime/utils/base.tsDaniel Roe4
packages/kit/src/layers.tsDaniel Roe4
packages/vite/src/plugins/resolve-deep-imports.tsDaniel Roe4
test/fixtures/build-assets-dir-collision/package.jsonDaniel Roe4
test/fixtures/suspense-layout/package.jsonDaniel Roe4
packages/schema/src/builder-env.tsDaniel Roe4
packages/nuxt/meta.jsDaniel Roe4
test/e2e/runtime-compiler.test.tsDaniel Roe4
packages/nuxt/test/nitro/render-index.tsDaniel Roe4
packages/schema/builder-env.d.tsDaniel Roe4
packages/nuxt/src/pages/build.d.tsDaniel Roe4
packages/kit/test/write-types.bench.tsDaniel Roe4
packages/nuxt/test/build.bench.tsDaniel Roe4
packages/nuxt/test/early-404-patterns.test.tsDaniel Roe3
scripts/prepack.tsDaniel Roe3
packages/nuxt/test/emitted-imports.test.tsDaniel Roe3
packages/nuxt/src/core/utils/server-routes.tsDaniel Roe3
packages/nuxt/test/server-routes.test.tsDaniel Roe3
test/fixtures/basic-types/app/fetch-types.tsDaniel Roe3
packages/vite/test/resolved-externals.test.tsDaniel Roe3
packages/nuxt/src/runtime/server/dev-error/index.tsDaniel Roe3
packages/nuxt/src/app/middleware/route-rules.tsDaniel Roe3
packages/nuxt/src/runtime/server/server-runtime-config.tsDaniel Roe3
test/base-url.test.tsDaniel Roe3
packages/nuxt/test/server-session.test.tsDaniel Roe3
nano-staged.mjsDaniel Roe3
packages/kit/test/jiti-fallback.spec.tsDaniel Roe3
packages/nuxt/src/app/error.tsDaniel Roe3
packages/nuxt/src/server/secret.tsDaniel Roe3

Ownership by author

Primary owner = the author with the most commits to a file. Solely owned = files only that author has touched.

AuthorFiles ownedSolely ownedFiles touched
Daniel Roe1,9271,3402,149
Sébastien Chopin11434267
Pooya Parsa325210
Julien Huang3112204
Eduardo San Martin Morote3025177
Matej Černý248109
Hugo2312132
Luke Nelson171282
Austin Serb171726
Harlan Wilton15594
Jonas Thelemann141132
Anoesj Sadraee141324
Florian Heuberger13993
abeer0122105
Bochkarev Ivan11197
Robin11855
Max10681
Ori9678
Ryota Watanabe9532
kealan8627
Mirko Jantschke7513
Jannik Sohn7710
Yash Bavadiya759
Andrej Adamcik6613
mcrapts6510

Showing top 25 of 573 contributors.

Most shared files

Files touched by the most people — shared code where changes are most likely to need coordination.

FileContributorsPrimary ownerOwner share
test/basic.test.ts70Daniel Roe53.4%
package.json61Pooya Parsa30.3%
README.md59Sébastien Chopin40.4%
packages/nuxt/src/app/composables/asyncData.ts52Daniel Roe41.9%
pnpm-lock.yaml49Daniel Roe69.6%
packages/nuxt/src/pages/module.ts48Daniel Roe60.9%
test/nuxt/composables.test.ts47Daniel Roe50.4%
packages/nuxt/src/core/nuxt.ts42Daniel Roe68.5%
packages/nuxt/src/app/nuxt.ts42Daniel Roe53.7%
test/bundle.test.ts40Daniel Roe65.7%
packages/nuxt/src/app/composables/fetch.ts39Daniel Roe46.1%
packages/schema/src/config/experimental.ts36Daniel Roe63.5%
packages/nuxt/src/app/components/nuxt-link.ts35Daniel Roe50.5%
packages/nuxt/src/core/templates.ts34Daniel Roe67.3%
packages/kit/src/template.ts33Daniel Roe63.3%
packages/nuxt/src/pages/utils.ts31Daniel Roe57.6%
packages/nuxt/src/app/composables/cookie.ts31Daniel Roe50.0%
packages/nuxt/package.json30Daniel Roe56.4%
packages/nuxt/src/imports/presets.ts28Daniel Roe39.4%
packages/schema/src/config/common.ts26Daniel Roe55.6%