Open-Source Wikis

/

Kotlin

/

By the numbers

JetBrains/kotlin

By the numbers

Data collected on 2026-04-30 (HEAD 41c53726711a on master).

Size

The repository is one of the larger active Kotlin codebases in the open-source world. Kotlin sources dominate, with significant Java (much of it inherited from the IntelliJ ecosystem) and a substantial C/C++ runtime under kotlin-native/.

xychart-beta horizontal
    title "Lines of code by language"
    x-axis ["kt", "java", "h", "kts", "swift", "cpp", "c", "ts", "js"]
    y-axis "Lines (thousands)" 0 --> 4000
    bar [3452, 868, 70, 65, 58, 37, 13, 12, 6]
Language Files Lines (approx)
Kotlin (.kt) ~62,000 ~3,450,000
Kotlin script (.kts) ~2,500 ~65,000
Java ~4,100 ~870,000
C++ headers (.h) ~540 ~70,000
Swift ~300 ~58,000
C++ ~200 ~37,000
C ~40 ~13,000
TypeScript ~150 ~12,000
JavaScript ~290 ~6,000

Files with at least one TODO, FIXME, or HACK comment in .kt sources: ~3,150.

File counts by top-level directory (Kotlin + Java)

Directory .kt + .java files
compiler/ ~38,200
analysis/ ~10,400
libraries/ ~5,600
js/ ~3,500
plugins/ ~2,500
native/ ~2,300
jps/ ~1,700
kotlin-native/ ~770
core/ ~760

Note: compiler/ includes a very large testData/ directory with thousands of small .kt files used as compiler test inputs.

Activity

The project has 17+ years of git history (first commit Oct 2008) and over 136,000 commits. Annual commit volume since 2010:

Year Commits
2010 100
2011 2,575
2012 6,615
2013 4,628
2014 6,226
2015 9,857
2016 8,835
2017 9,578
2018 9,320
2019 10,252
2020 13,008
2021 10,796
2022 7,448
2023 10,440
2024 11,268
2025 11,486
2026 4,198 (partial year)

Commit volume has been remarkably steady around 10,000/year for the past five years, with a peak in 2020.

Churn hotspots (last 90 days)

The most-modified files in the trailing 90 days. Many are generated artifacts (compiler-arguments JSON, KGP API files, BTAPI implementation classes) — they show up because the build emits them on every change to their generators.

Modifications File
92 compiler/arguments/resources/kotlin-compiler-arguments.json
56 libraries/tools/kotlin-gradle-plugin/api/all/kotlin-gradle-plugin.api
54 compiler/build-tools/kotlin-build-tools-api/src/main/kotlin/org/jetbrains/kotlin/buildtools/api/internal/wrappers/KotlinWrapperPre2_4_0.kt
53 gradle/verification-metadata.xml
47 compiler/build-tools/kotlin-build-tools-impl/gen/.../JvmCompilerArgumentsImpl.kt
45 repo/gradle-build-conventions/buildsrc-compat/src/main/kotlin/common-configuration.gradle.kts
43 analysis/analysis-api-fir/src/.../KaFirResolver.kt
40 compiler/arguments/src/.../JvmCompilerArguments.kt
40 analysis/analysis-api-fir/gen/.../KaFirDataClassConverters.kt
38 compiler/fir/checkers/src/.../FirErrorsDefaultMessages.kt
38 analysis/analysis-api-fir/gen/.../KaFirDiagnosticsImpl.kt
35 compiler/fir/checkers/checkers-component-generator/src/.../FirDiagnosticsList.kt
33 analysis/analysis-api-impl-base/src/.../KaBaseResolver.kt

The pattern is clear: the K2 frontend's diagnostic surface, the Build Tools API, and the Kotlin Gradle Plugin's public API see continuous evolution. The Analysis API's FIR resolver is also under active development.

Bot-attributed commits

Of the ~11,800 commits on master over the past year, only ~20 carry a bot signature in the author or co-author trailers (e.g., dependabot[bot], factory-droid[bot], github-actions[bot]). This is a lower bound — inline AI-assistance tools that don't write commit metadata are not counted, and JetBrains' internal CI pipelines tend to commit under regular author names. The repository's primary code-review path is GitHub PRs and JetBrains Space MRs, both of which are human-driven.

Test data weight

A large fraction of the compiler/ and analysis/ directories is testData/ — small Kotlin source snippets used as inputs for code-generation, diagnostic, and IR tests. The exact count varies because many are generated, but the bulk of the ~38,000 .kt/.java files in compiler/ are testdata, not production sources.

Bus factor signals

Commit data on master for the past year shows the workload is not concentrated on a single individual. The top-15 contributors of the past year (by commit count, excluding bots) range from ~970 to ~200 commits, indicating a sizeable core team across frontend, IR, native, libraries, and tooling areas. See maintainers.md for a per-subsystem map.

Dependencies

Dependency hashes are pinned in gradle/verification-metadata.xml (53 modifications in the last 90 days). The Kotlin compiler itself is bootstrapped from a previously released Kotlin (-dev snapshot or stable release), pinned via gradle.properties. The Native backend additionally vendors LLVM and a small set of native libraries under kotlin-native/dependencies/.

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

By the numbers – Kotlin wiki | Factory