The ledger
Every figure on this site, added up. The product pages carry the detail and the reasoning, and the scale of it is hard to see spread across 17 of them.
Each number here was recorded by the repository it came from, and traces back to the document that produced it. I built the schema gate that requires a source and a capture date on every metric, so arithmetic is what this page adds. The repositories counted differently from each other, and the tables below show where.
The shape of it
17 products across 5 eras. 16 of them sit inside a closed build period of 430 days, which is the span the headline on the home page counts. The core sample beside it runs past that, to today, because one era has not closed. The remaining 1 sits inside that open era, still going.
Those 17 pages hold 134 recorded metrics and 69 screenshots. Every metric carries a source and the date it was measured. The content schema requires both, so a number without provenance fails the build rather than reaching a page.
What adds up
Four quantities turn up often enough, and were counted closely enough alike, to be worth summing. The repositories record plenty else, and the rest of it stayed on the product pages.
One row per product. Where the line columns are empty, that repository counted its tree as one figure with tests inside it, and appears in the second table below.
Scrolls sideways. The last column says what each count covered.
| Product | Era | Source lines | Test lines | Test cases | Commits | What the line counts covered |
|---|---|---|---|---|---|---|
| GatherGrove | .NET | 331,181 | 463,430 | 22,730 | 2,130 | backend C#, web and mobile TypeScript, and shared design tokens; 24,479 lines of generated EF Core migrations counted separately |
| GeoLeap | .NET | 14,313 | 2,322 | |||
| SkillLedger | .NET | 115,872 | 122,933 | 4,136 | 944 | src/ C#; the web client's TypeScript is counted separately |
| CapVeri | .NET | 364,654 | 534,150 | 16,758 | 5,242 | authored TS, TSX, PY, MJS, JS and JSX source, with generated output kept out of the total |
| CAMAudit v2 | Pivot | |||||
| Lextract | Pivot | 106,161 | 91,084 | 4,731 | 1,252 | all non-test, non-doc tracked code; the test count is directory-inclusive |
| GrantPipe | April | 250,218 | 388,074 | 18,248 | 4,266 | authored source across six workspaces, generated files excluded |
| Kaiplan | April | 89,693 | 141,158 | 6,929 | 469 | TS, TSX, Astro, CSS, SQL and MJS, counting a file as test when its name ends .test or .spec |
| PebbleDesk | April | 88,514 | 168,704 | 7,818 | 1,443 | TS, TSX and Astro, with test files excluded; files matching .test.ts or .test.tsx |
| Gavelhouse | April | 6,580 | 680 | |||
| PHIGuard | April | 87,205 | 57,202 | 2,109 | 876 | authored code categories, with documentation, config, marketing content and generated artifacts kept out |
| Floriva | April | 50,485 | 77,987 | 4,596 | 706 | src/, app/, components/ and constants/; tests/ and e2e/ |
| Ventora Platform | Platform | 34,435 | 48,464 | 2,734 | TypeScript, JavaScript and Python source, counted apart from the test files in the same packages; TypeScript, JavaScript and Python test files | |
| Ventora Sequencer | Platform | 28,702 | 40,192 | 1,747 | 698 | authored TypeScript, generated files excluded |
| Ventora CRM | Platform | 13,971 | 13,844 | 573 | 179 | files classed application and test; schema and tooling counted separately |
| Floriva Web | April | 32,425 | 9,659 | 431 | 283 | application source, build and verification tooling, styles and SQL migrations; the test suite, counted apart from application source |
| Decision-making skills | Harness | 2,397 | 408 | |||
| Total | 1,593,516 | 2,156,881 | 116,830 | 21,898 | ||
Across the 13 products that publish a split, test code outweighs source code 1.35 to 1.
The products that publish one line count
2 products state a single figure covering source and tests together instead of a split, which is why the two line columns above have no cell for them.
Counted with tests inside the same figure.
Scrolls sideways. The last column says what each count covered.
| Product | Lines counted | What the count covered |
|---|---|---|
| GeoLeap | 1,063,755 | C#, TSX, TS, JS and SQL across the full tree, tests included; a raw wc -l count, so blank lines and comments are in the figure |
| Gavelhouse | 224,885 | every tracked source file, test files included |
| Total | 1,288,640 |
The two tables divide the work between them and share no product, so they add.
- Split across 13 products
- 3,750,397
- Combined across 2 products
- 1,288,640
- Lines across 15 products
- 5,039,037
How these totals were made
These totals sum measurements taken under different rules. CapVeri counted six file extensions and excluded generated output, Gavelhouse counted every tracked file with tests inside the total and approximated its test case count from call sites, SkillLedger counted C# and left its web client's TypeScript out, and two products' test counts are what sits in the tree, unconfirmed by a run. Commit figures come from each project's private history: the published snapshots are single squashed commits, recorded here as the repositories logged them at the time.
The two products in the second table stay there for reasons worth stating. Gavelhouse's figure is regenerated and checked by its own build, which fails if the document drifts from the tree, and it carries no source-versus-test dimension to split on. GeoLeap's is a raw line count its own document calls an upper bound, because the tools that strip comments were missing from the machine that measured it. Recounting either one here would replace a number its repository stands behind with one this site made up.
The gate on this page
Every number in the tables is a restatement of a number already printed on a product page, and the build checks that it still matches the sentence it was taken from. Edit one without the other and the build fails, naming the figure and the sentence it no longer agrees with. The totals read from the same claims the product pages make.
Where each figure came from
Every figure above, with the document it was read from and the date it was measured. Figures rot, so the date travels with the number.
GatherGrove4 figures
- Source lines
- 331,181backend C#, web and mobile TypeScript, and shared design tokens; 24,479 lines of generated EF Core migrations counted separatelyportfolio/METRICS.md § Code volume: verified, measured
- Test lines
- 463,430backend C#, web and mobile TypeScript, and shared design tokens; 24,479 lines of generated EF Core migrations counted separatelyportfolio/METRICS.md § Code volume: verified, measured
- Test cases
- 22,730passing across the backend, web client and mobile suitesREADME.md § test table, measured README.md § test table, measured README.md § test table, measured
- Commits
- 2,130the private development historyportfolio/METRICS.md § Commit history, measured
GeoLeap3 figures
- Lines counted
- 1,063,755C#, TSX, TS, JS and SQL across the full tree, tests included; a raw wc -l count, so blank lines and comments are in the figureportfolio/METRICS.md § Lines and files, counted with wc -l, measured
- Test cases
- 14,313passing across the backend and frontend suitesportfolio/METRICS.md § Test results: Backend, measured portfolio/METRICS.md § Test results: Frontend, measured
- Commits
- 2,322the full private development history of the projectportfolio/METRICS.md § Commit history, measured
SkillLedger4 figures
- Source lines
- 115,872src/ C#; the web client's TypeScript is counted separatelyportfolio/METRICS.md § Source size, measured
- Test lines
- 122,933src/ C#; the web client's TypeScript is counted separatelyportfolio/METRICS.md § Source size, measured
- Test cases
- 4,136declared [Fact] test methods; the real case count runs higher once [Theory] and [InlineData] cases are addedportfolio/METRICS.md § Tests, measured
- Commits
- 944commits recorded in the private development historyportfolio/METRICS.md § History, exported from the private source repository; this snapshot is one commit, measured
CapVeri4 figures
- Source lines
- 364,654authored TS, TSX, PY, MJS, JS and JSX source, with generated output kept out of the totalportfolio/METRICS.md § Source vs test vs generated, measured
- Test lines
- 534,150authored TS, TSX, PY, MJS, JS and JSX source, with generated output kept out of the totalportfolio/METRICS.md § Source vs test vs generated, measured
- Test cases
- 16,758passing in a measured pytest and vitest runportfolio/METRICS.md § Measured runs, measured
- Commits
- 5,242the full commit history of CapVeri's private development repository, 2025-12-24 to 2026-07-03portfolio/METRICS.md § Git history, measured
Lextract4 figures
- Source lines
- 106,161all non-test, non-doc tracked code; the test count is directory-inclusiveportfolio/METRICS.md § What each number's command actually is, measured
- Test lines
- 91,084all non-test, non-doc tracked code; the test count is directory-inclusiveportfolio/METRICS.md § What each number's command actually is, measured
- Test cases
- 4,731all non-test, non-doc tracked code; the test count is directory-inclusiveportfolio/METRICS.md § What each number's command actually is, measured
- Commits
- 1,252the private development historyportfolio/METRICS.md § Commit history, measured
GrantPipe4 figures
- Source lines
- 250,218authored source across six workspaces, generated files excludedportfolio/METRICS.md § Scale, measured
- Test lines
- 388,074authored source across six workspaces, generated files excludedportfolio/METRICS.md § Scale, measured
- Test cases
- 18,248declared across 905 unit and integration test filesportfolio/METRICS.md § Structure, measured
- Commits
- 4,266the private development historyportfolio/METRICS.md § Scale, measured
Kaiplan4 figures
- Source lines
- 89,693TS, TSX, Astro, CSS, SQL and MJS, counting a file as test when its name ends .test or .specportfolio/METRICS.md § 2. Source against test, measured
- Test lines
- 141,158TS, TSX, Astro, CSS, SQL and MJS, counting a file as test when its name ends .test or .specportfolio/METRICS.md § 2. Source against test, measured
- Test cases
- 6,929declared, counted by grep across 425 test filesportfolio/METRICS.md § 3. Test files, cases, assertions, measured
- Commits
- 469commits recorded across the solo development historyportfolio/METRICS.md § 7, measured
PebbleDesk4 figures
- Source lines
- 88,514TS, TSX and Astro, with test files excludedportfolio/METRICS.md § Size, measured
- Test lines
- 168,704files matching .test.ts or .test.tsxportfolio/METRICS.md § Size, measured
- Test cases
- 7,818individual test cases (`it` blocks) across every .test.ts and .test.tsx file in the treeportfolio/METRICS.md § Counting test cases, measured
- Commits
- 1,443commits recorded in the source repository's git historyportfolio/METRICS.md § Source repository history, measured
Gavelhouse3 figures
- Lines counted
- 224,885every tracked source file, test files includedportfolio/METRICS.md § Source (includes test files; generated by pnpm run metrics:generate), measured
- Test cases
- 6,580static count of it( and test( call sites across the suiteportfolio/METRICS.md § Tests (static count of it( and test( call sites), measured
- Commits
- 680the full private commit history, first commit to snapshot captureportfolio/METRICS.md § History (private source repository; 131 of 680 commits under an automation account), measured
PHIGuard4 figures
- Source lines
- 87,205authored code categories, with documentation, config, marketing content and generated artifacts kept outportfolio/METRICS.md § Code, measured
- Test lines
- 57,202authored code categories, with documentation, config, marketing content and generated artifacts kept outportfolio/METRICS.md § Code, measured
- Test cases
- 2,109declared across 182 filesportfolio/METRICS.md § Tests, measured
- Commits
- 876commits made across the repository's development historyREADME § About this snapshot, measured
Floriva4 figures
- Source lines
- 50,485src/, app/, components/ and constants/docs/metrics.md § Code, measured
- Test lines
- 77,987tests/ and e2e/docs/metrics.md § Code, measured
- Test cases
- 4,596passing in a measured Jest rundocs/metrics.md § Tests, measured
- Commits
- 706commits to the project's private repositorydocs/metrics.md § History, measured
Ventora Platform3 figures
- Source lines
- 34,435TypeScript, JavaScript and Python source, counted apart from the test files in the same packagesportfolio/METRICS.md § Source versus test, by package, measured portfolio/METRICS.md § Source versus test, by package, measured portfolio/METRICS.md § Source versus test, by package, measured
- Test lines
- 48,464TypeScript, JavaScript and Python test filesportfolio/METRICS.md § Source versus test, by package, measured portfolio/METRICS.md § Source versus test, by package, measured portfolio/METRICS.md § Source versus test, by package, measured
- Test cases
- 2,734declared across vitest, pytest and node:testportfolio/METRICS.md § Scale, measured portfolio/METRICS.md § Scale, measured portfolio/METRICS.md § Scale, measured
Ventora Sequencer4 figures
- Source lines
- 28,702authored TypeScript, generated files excludedportfolio/METRICS.md § Code size, measured
- Test lines
- 40,192authored TypeScript, generated files excludedportfolio/METRICS.md § Code size, measured
- Test cases
- 1,747passing across 149 filesportfolio/METRICS.md § Tests and coverage, measured
- Commits
- 698commits recorded in the repository's historyportfolio/METRICS.md § Numbers that are not checkable from this snapshot, measured
Ventora CRM4 figures
- Source lines
- 13,971files classed application and test; schema and tooling counted separatelyportfolio/METRICS.md § By role, measured
- Test lines
- 13,844files classed application and test; schema and tooling counted separatelyportfolio/METRICS.md § By role, measured
- Test cases
- 573declared across the three gating suitesportfolio/METRICS.md § Tests, measured
- Commits
- 179the project's own git history over its build periodREADME.md, status banner, measured
Floriva Web4 figures
- Source lines
- 32,425application source, build and verification tooling, styles and SQL migrationsportfolio/METRICS.md § Written by hand (that doc's heading for authored rather than generated files), measured portfolio/METRICS.md § Written by hand (that doc's heading for authored rather than generated files), measured portfolio/METRICS.md § Written by hand (that doc's heading for authored rather than generated files), measured portfolio/METRICS.md § Written by hand (that doc's heading for authored rather than generated files), measured
- Test lines
- 9,659the test suite, counted apart from application sourceportfolio/METRICS.md § Written by hand (that doc's heading for authored rather than generated files), measured
- Test cases
- 431429 passed, 2 skipped, 0 failingportfolio/METRICS.md § Tests, measured
- Commits
- 283commits in the private development repository that produced this snapshotREADME § By the numbers, measured
Decision-making skills2 figures
- Commits
- 408the full public commit history, first commit to the date this was countedthe decision-making-skills repository at commit 50dfc58, counted directly: this project is live rather than a snapshot and keeps no generated metrics document, measured
- Test cases
- 2,397Python test functions declared across 65 files under tests/the decision-making-skills repository at commit 50dfc58, counted directly: this project is live rather than a snapshot and keeps no generated metrics document, measured