# qgis/QGIS SLOC report

> As of 2026-11-05 (commit aa43b84b970a), qgis/QGIS contains 10,146,276 total lines: 9,219,463 code, 458,655 comments, 468,158 blank, across 18,847 files in 36 languages (top language: TypeScript 76.5%). Canonical public options (tests, docs and generated files excluded). Counted with tokei via OctoCounts.

qgis/QGIS has 9,219,463 source lines of code out of 10,146,276 total lines across 18,847 files, counted with tokei from the master ref at commit aa43b84b970a on November 5, 2026. Tests, docs and generated files are excluded under OctoCounts' canonical public options.

OctoCounts produced this report by resolving qgis/QGIS to commit aa43b84b970a, downloading the repository source archive, and counting files selected by the effective rules with tokei, the open-source line counter written in Rust. The table below breaks the count down by programming language into files, total lines, code lines, comment lines, and blank lines, so the figures can be compared across languages and projects. Results are cached by commit, tokei version, and analysis options; an exact reproduction needs the same commit, engine version, and effective counting rules.

## Counting rules and retention

qgis/QGIS: tokei-15.0.0, policy directories-v1; docs excluded, tests excluded, generated excluded. Excluded directory names: .cache, .generated, .git, .next, __tests__, build, dist, doc, docs, documentation, fixtures, gen, generated, node_modules, target, test, tests, vendor. Ignored languages: none. Repository declarations: off. Exclusions are rule-based; they do not prove that every test, document or generated file was removed.

Saved reports remain subject to cache cleanup and replacement. Export the JSON or text for durable citation; live repository URLs can change.

## Repository size insights

This is a very large codebase by counted code lines. Code represents 90.9% of all lines, comments represent 4.5%, and the repository averages 489 code lines per file. TypeScript accounts for 76.5% of counted code.

| Language | Files | Lines | Code | Comments | Blanks |
| --- | ---: | ---: | ---: | ---: | ---: |
| TypeScript | 37 | 7,069,682 | 7,054,565 | 0 | 15,117 |
| C++ | 3,588 | 1,601,092 | 1,247,560 | 125,242 | 228,290 |
| C Header | 3,670 | 732,010 | 328,482 | 297,278 | 106,250 |
| Autoconf | 1,614 | 347,423 | 249,004 | 4,868 | 93,551 |
| Python | 1,861 | 100,842 | 86,443 | 5,427 | 8,972 |
| SVG | 6,785 | 78,155 | 78,096 | 11 | 48 |
| C++ Header | 178 | 57,583 | 39,844 | 10,200 | 7,539 |
| JSON | 29 | 36,381 | 36,375 | 0 | 6 |
| YAML | 5 | 31,244 | 31,244 | 0 | 0 |
| XML | 339 | 28,463 | 27,502 | 42 | 919 |
| CMake | 177 | 20,946 | 16,551 | 1,639 | 2,756 |
| C | 11 | 7,825 | 5,681 | 1,176 | 968 |

Top language: TypeScript 76.5%. Generated on November 5, 2026. Canonical report: https://octocounts.com/github/qgis/QGIS

## Reproduce this report

[Reproduce this exact report and configuration](https://octocounts.com/github/qgis/QGIS/commit/aa43b84b970a39cd5bbebf7a90d6c7b40c0d1f7f?analysis=%7B%22ignoredDirs%22%3A%5B%5D%2C%22ignoredLanguages%22%3A%5B%5D%2C%22profile%22%3A%22default%22%2C%22includeDocs%22%3Afalse%2C%22includeTests%22%3Afalse%2C%22includeGenerated%22%3Afalse%7D&reportId=42f4a2e094905a3362bfe449e979e87464e56aeb18fff51a0910e6ef4500226e).

## Report FAQ

### How many lines of code does qgis/QGIS have?

qgis/QGIS has 9,219,463 lines of code, plus 458,655 comment lines and 468,158 blank lines, for 10,146,276 total lines at commit aa43b84b970a on November 5, 2026. Tests, docs and generated files are excluded under OctoCounts' canonical public options.

### How was the qgis/QGIS line count measured?

OctoCounts resolved the public GitHub repository to commit aa43b84b970a, downloaded the source archive, counted it with tokei, and cached the report by commit, tokei version, and analysis options.

### What commit was counted for qgis/QGIS?

This OctoCounts report was generated from master at commit aa43b84b970a on November 5, 2026.

## Similar repository reports

- [openclaw/openclaw](https://octocounts.com/github/openclaw/openclaw) — TypeScript, 11,578,474 code lines
- [FreeCAD/FreeCAD](https://octocounts.com/github/FreeCAD/FreeCAD) — TypeScript, 7,136,477 code lines
- [elastic/kibana](https://octocounts.com/github/elastic/kibana) — TypeScript, 13,205,022 code lines
- [BuilderIO/agent-native](https://octocounts.com/github/BuilderIO/agent-native) — TypeScript, 6,367,941 code lines
- [elizaOS/eliza](https://octocounts.com/github/elizaOS/eliza) — TypeScript, 6,180,382 code lines
- [stablyai/orca](https://octocounts.com/github/stablyai/orca) — TypeScript, 6,010,698 code lines

## Related OctoCounts pages

- [Recently analyzed repositories](https://octocounts.com/recent)
- [Popular SLOC reports](https://octocounts.com/popular)
- [Trending GitHub repositories](https://octocounts.com/trending)
- [Hall of Monoliths](https://octocounts.com/hall-of-monoliths)
- [Next.js vs Vite](https://octocounts.com/compare/nextjs-vs-vite)
- [Angular vs Vue](https://octocounts.com/compare/angular-vs-vue)
- [Svelte vs Vue](https://octocounts.com/compare/svelte-vs-vue)
- [How to count lines of code in a GitHub repository](https://octocounts.com/docs/count-lines-of-code-github)
- [GitHub SLOC counter guide](https://octocounts.com/docs/github-sloc-counter)
- [Counting methodology](https://octocounts.com/docs/methodology)
- [SLOC and code metrics glossary](https://octocounts.com/docs/glossary)
- [Original research: how filtering changes SLOC counts](https://octocounts.com/research)
- [OctoCounts API docs](https://octocounts.com/docs/api)
- [All OctoCounts guides](https://octocounts.com/docs)
