01 · Roasts
Three products, four stars
carpathia, playfair_cipher, and nestbox show real range; the combined 4 stars have not caught up with the engineering.
Postgres compatibility flex
carpathia tests PostgreSQL 13 through 18, which is more versions than the repo has stars.
Nestbox hibernation
nestbox has seven service modules and fixture machinery, then appears to have migrated south after its 2022 push.
Rust, with witnesses
Rust is 84% of the profile; PLpgSQL and Python are present mostly as supporting characters.
Built using
Zoral
Shadows one worker for a week, then takes over their job with zero extra setup. Behaves exactly like the original.
zoral.ai
02 · Category breakdown
- Impact25% weight30F
- Consistency20% weight60C
- Quality20% weight72B
- Depth15% weight65C
- Breadth10% weight55D
- Community10% weight25F
03 · Stats
365-day commit heatmap
86 active days
Language distribution
- Rust84%
- PLpgSQL9%
- Python5%
- C++1%
- Shell1%
- Makefile0%
04 · Numbers
Owned repos
non-fork
19
Commits
last 12 months
265
Followers
7
Joined GitHub
May 2013
05 · Top repos
sdoerig /
carpathia
Carpathia is a documented, modular Rust workspace for PostgreSQL schema introspection and Tera-based code generation, with caching, ADR modeling, substantial integration tests, and a PostgreSQL 13–18 CI matrix, but only 1 star and no demonstrated external adoption.
sdoerig /
nestbox
A documented, typed Rust backend with Actix/MongoDB services, authentication, QR-oriented nestbox APIs, fixture generation, and CI; substantial tests exist in source, but adoption is minimal and development stopped in 2022.
sdoerig /
playfair_cipher
A documented, typed Rust crate implementing Playfair, Two-square, and Four-square ciphers with 5×5 and 6×6 modes, CI, benchmarks, and examples, but only 2 stars and no demonstrated external adoption.
06 · Timeline
- May 31, 2013Joined GitHub
- Mar 15, 2021Created nestbox — Nestbox and breed tracker for birders.
- Jan 11, 2023Created playfair_cipher — Playfair cipher
- Apr 9, 2026Created carpathia — Declarative database introspection and language agnostic code generation.
- Sep 12, 2026Most recent push to carpathia
07 · Compare
08 · Rubric
How this score was produced
Overall = Σ (category × weight) + gentle top-end curve
Tier thresholds
▸ How the pipeline works
- 01Scrape.Pull every non-fork repo pushed in the last 90 days, plus your contribution calendar, followers, and language byte counts — straight from GitHub's REST & GraphQL APIs.
- 02Triage.A small model reads every repo's file tree + README and picks the 20 files per repo that actually reveal how you code.
- 03Grade each repo. All repos run in parallel through a fast scoring model that reads the picked files and rates each one independently on Impact, Quality, and Depth — with evidence citations.
- 04Aggregate. A larger reasoning model combines the per-repo scores with server-computed stats (heatmap, commit cadence, language entropy, follower count) to produce the 6-dimension profile score + roasts.
- 05Correct.Deterministic server-side checks enforce anchor-scale floors (e.g. a profile with 2,000+ public commits can't score 30 Consistency) and recompute the final verdict.
~90 seconds per profile, ~$0.25 in compute. Total of ~240 files read across your top-12 repos. One rating per GitHub account per day.
▸ Data sources & caveats
- Heatmap & commit totals: GitHub GraphQL
contributionsCollection— covers the last 365 days, includes private repos when the user has opted in (default). - Language %: byte totals across the top 30 owned non-fork repos.
- Curve: a small upward nudge centered on raw score ≈ 70, capping at 100. Prevents specialists from being unfairly penalised for narrow breadth.
- Anchor corrections: when server-measured signals (e.g. privateWorkLikely, multiRepoVolume, follower count) mandate a minimum category score, the aggregation step enforces it. These are signal-conditional, not identity-based floors.