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

#330 — Top 77.0%

TimCrooker

Tim Crooker

C

Getting there

Overall

0.0

/ 100

01 · Roasts

The 67% Graveyard Keeper

Two-thirds of your 34 repos haven't been touched in over 2 years. That's not a portfolio, that's a digital cemetery with three living residents.

4 Followers, 28 PRs

You opened 28 pull requests this year and have 4 followers. Either you're reviewing your own monorepo in elaborate theatrical fashion, or the open-source community just hasn't noticed yet.

TypeScript Scaffolding Infinite Loop

Grit is a scaffolding CLI. ai-context-kit is a CLI. uishot is a CLI. You built a tool to build CLIs, then built more CLIs with it. At what point does the scaffolding scaffold itself?

88 Commits, Zero Impact

26 total stars across your entire public history. Your three best repos average 1 star each. The heatmap is gorgeous, the adoption metrics are a flat line.

Python Ghost

Python accounts for 70% of your code by bytes, yet all three of your active named projects are TypeScript. Where is the Python? What is it doing? Why won't it show itself?

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
    40D
  • Consistency
    20% weight
    60C
  • Quality
    20% weight
    73B
  • Depth
    15% weight
    60C
  • Breadth
    10% weight
    65C
  • Community
    10% weight
    35F

03 · Stats

365-day commit heatmap

312 active days

Less
More

Language distribution

6 langs
  • Python70%
  • TypeScript24%
  • JavaScript3%
  • HTML2%
  • Shell1%
  • CSS0%

04 · Numbers

Owned repos

non-fork

30

Commits

last 12 months

88

Followers

4

Joined GitHub

Jun 2018

05 · Top repos

06 · Timeline

  1. Jun 24, 2018
    Joined GitHub
  2. Sep 4, 2021
    Created Grit
  3. Feb 11, 2026
    Created ai-context-kit
  4. Jun 12, 2026
    Created uishot — Agent-paired UI screenshot CLI — make every screen and state of your web app addressable and instantly capturable
  5. Aug 12, 2026
    Most recent push to ai-context-kit

07 · Compare

github.com/
TimCrooker · 6dmedian coder

08 · Rubric

How this score was produced

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

CategoryWeightScoreContrib.
Raw total55.6
Top-end curve+3.9
Final overall59.5

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.
TimCrooker · 59.5/100 — Rate My GitHub