Open-Source Wikis

/

Deno

/

By the numbers

denoland/deno

By the numbers

Data collected on 2026-04-30 from commit 592a9c4225188994d04c572f5eaac79eebd7dcb3 on main.

A quantitative snapshot of the denoland/deno repository — useful for anyone trying to size up the codebase before diving in.

Size

xychart-beta horizontal
    title "Lines of code by language"
    x-axis ["Rust", "JavaScript", "TypeScript"]
    y-axis "Lines" 0 --> 600000
    bar [504024, 267612, 187813]
Language Lines Where
Rust ~504K cli/, runtime/, ext/, libs/, tests/
JavaScript ~268K Extension JS in ext/*/ (e.g., Node polyfills, web platform JS), tests/
TypeScript ~188K (excluding tests/) LSP infra, type definitions, tools/, runtime polyfills

The repo as a whole has ~922 Rust files, ~2,858 TypeScript files, and ~1,132 JavaScript files (excluding .git/).

Workspace shape

Component Count
Cargo workspace members ~70 crates
ext/ extension crates 31
libs/ reusable crates 24
cli/ member crates 4 (cli, cli/lib, cli/rt, cli/snapshot)
runtime/ member crates 4 (runtime, runtime/features, runtime/permissions, runtime/subprocess_windows)
tests/ member crates 9

Largest source files

The 10 longest Rust files by line count:

File Lines
tests/integration/lsp_tests.rs 19,909
cli/args/flags.rs 15,873
runtime/permissions/lib.rs 10,921
libs/npm/resolution/graph.rs 9,478
cli/lsp/tsc.rs 7,137
libs/config/workspace/mod.rs 6,815
libs/node_shim/lib.rs 5,006
cli/lsp/language_server.rs 4,580
ext/napi/js_native_api.rs 4,135
libs/eszip/v2.rs 4,018

The size of cli/args/flags.rs reflects Deno's CLI surface — every subcommand and every flag is parsed there.

Inside cli/

The 10 longest top-level files in cli/:

File Lines
cli/module_loader.rs 1,668
cli/factory.rs 1,441
cli/lib.rs 1,265
cli/file_fetcher.rs 1,234
cli/graph_util.rs 1,195
cli/type_checker.rs 1,138
cli/http_util.rs 841
cli/npm.rs 736
cli/worker.rs 659
cli/cdp.rs ~500

Activity

  • Total commits on main: ~15,755
  • First commit: 2018-05-13 (8 years of history)
  • Most recent commit (at snapshot): 2026-04-29
  • Active git authors (all-time, by commit email): 1,239
  • Bot-attributed commits (denobot, dependabot, github-actions): 526 (3.3% of total). This is a lower bound on automated work — inline AI tools that don't leave a trail in git history are not counted.

Top contributors since 2024-01-01 (by commit count)

These are the people most likely to know the recent state of the codebase. Listed for context; the per-page byline is what you actually want when looking for an owner of a specific subsystem.

# Author
1 Bartek Iwańczuk
2 David Sherret
3 Divy Srivastava
4 Nathan Whitaker
5 Nayeem Rahman
6 Asher Gomez
7 Yoshiya Hinosawa
8 Leo Kettmeir
9 Marvin Hagemeister
10 Luca Casonato

Code health signals

  • TODO/FIXME/HACK comments in Rust: ~480
  • Lint plugins: 1 dedicated to project-specific rules (tools/lint_plugins/)
  • Generated workflow files in .github/workflows/: 11 YAML files generated from sibling .ts scripts (the source of truth)

Releases

  • Tagged releases: hundreds, from v0.0.1 up through the current v2.7.x line. The earliest tag is v0.0.1, v1.0 was tagged 2020-05-14, v2.0 was 2024-10-08, v2.5.0 was 2025-09-10, v2.7.0 was 2026-02-25.

Cross-cutting stats

Metric Value
Workspace dependencies pinned in Cargo.toml ~30 deno_* crates plus a long list of third-party deps
Submodules a handful (test fixtures, WPT, std lib, node-compat)
Tests directories tests/specs/, tests/unit/, tests/unit_node/, tests/wpt/, tests/node_compat/, tests/integration/, tests/napi/, tests/ffi/

For history and trajectory, see Lore. For trivia, see Fun facts.

Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.

By the numbers – Deno wiki | Factory