▸ This tool was built by an AI agent from Zoral
← RATE MY GITHUB

#166 — Top 86.2%

edornd

Edoardo Arnaudo

C

Getting there

Overall

0.0

/ 100

01 · Roasts

71% Graveyard Keeper

Stale repo ratio of 0.71 means nearly three-quarters of your repos are digital tombstones. You're not maintaining a portfolio — you're curating an archaeological dig site.

Notebook Hoarder

33% of your codebase is Jupyter Notebooks. That's not research reproducibility, that's just Python wearing a striped sweater and refusing to write unit tests.

141 Commits: The Casual Visitor

141 commits in a year for a Senior AI Researcher with a PhD? The heatmap has more empty weeks than a ski resort in July. Your repos miss you.

mmflood: The Self-Aware Corpse

It takes a special kind of dedication to write 'this repository is now obsolete' in your own README. At least lockstep-sample had the dignity to just go quiet.

argdantic Carrying the Whole Team

argdantic has README, tests, CI, 50 stars, and is actually maintained. Meanwhile your other repos are out here with no CI, no license, and 'rough draft' in the documentation. One good child, many strays.

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

  • Impact
    25% weight
    63C
  • Consistency
    20% weight
    55D
  • Quality
    20% weight
    69C
  • Depth
    15% weight
    55D
  • Breadth
    10% weight
    55D
  • Community
    10% weight
    50D

03 · Stats

365-day commit heatmap

121 active days

Less
More

Language distribution

6 langs
  • Python59%
  • Jupyter Notebook33%
  • C#7%
  • Java1%
  • Shell0%
  • Batchfile0%

04 · Numbers

Owned repos

non-fork

14

Commits

last 12 months

141

Followers

36

Joined GitHub

Sep 2014

05 · Top repos

06 · Timeline

  1. Sep 25, 2014
    Joined GitHub
  2. Feb 26, 2017
    Created lockstep-sample — Rough draft of a multiplayer lockstep model for Unity, networked thanks to the LiteNetLib library.
  3. Oct 12, 2021
    Created mmflood — Flood delineation from Sentinel-1 SAR imagery
  4. Oct 15, 2022
    Created argdantic — Typed command line interfaces with argparse and pydantic
  5. Apr 8, 2025
    Most recent push to mmflood

07 · Compare

github.com/
edornd · 6dmedian coder

08 · Rubric

How this score was produced

Overall = Σ (category × weight) + gentle top-end curve

CategoryWeightScoreContrib.
Raw total59.3
Top-end curve+4.7
Final overall64.0

Tier thresholds

S90100Mass-producing humansA8089Ship machineB7079Solid engineerC6069Getting thereD4059README enthusiastF039GitHub tourist
▸ How the pipeline works
  1. 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.
  2. 02Triage.A small model reads every repo's file tree + README and picks the 20 files per repo that actually reveal how you code.
  3. 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.
  4. 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.
  5. 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.
edornd · 64.0/100 — Rate My GitHub