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

#467 — Top 60.9%

phpfunk

Jeff Johns

D

README enthusiast

Overall

0.0

/ 100

01 · Roasts

The Alfred Whisperer

Three repos, all Alfred workflows, all abandoned between 2013 and 2016. Your entire GitHub legacy is teaching a launcher app to talk to other apps. Bold niche. Bolder exit.

Stars Don't Buy Activity

You have 105 followers and 554 stars but literally zero commits in the past year. The community found your old work — you just weren't there to notice.

PHP: 82%, Ambition: 0%

82% of your codebase is PHP and 100% of it was written before Docker was cool. The staleRepoRatio is a perfect 1.0 — every single repo is dead. That's not a ratio, that's a graveyard.

The Eternal 2014

Your deepest project (alfred-spotify-controls) maxed out at 1599 KB and a 2014 commit. The Spotify API it calls has been deprecated, rewritten, and deprecated again since then.

No Tests, No CI, No Mercy

HAS_TESTS=no, HAS_CI=no across all three repos. AppleScript in 2024 doesn't need tests the same way a museum exhibit doesn't need a fire suppression system.

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
    55D
  • Consistency
    20% weight
    55D
  • Quality
    20% weight
    45D
  • Depth
    15% weight
    50D
  • Breadth
    10% weight
    40D
  • Community
    10% weight
    40D

03 · Stats

365-day commit heatmap

0 active days

Less
More

Language distribution

5 langs
  • PHP82%
  • HTML8%
  • JavaScript5%
  • Shell3%
  • CSS2%

04 · Numbers

Owned repos

non-fork

26

Commits

last 12 months

0

Followers

105

Joined GitHub

Apr 2009

05 · Top repos

06 · Timeline

  1. Apr 9, 2009
    Joined GitHub
  2. Aug 9, 2011
    Created alfred-spotify-controls — Control Spotify using Alfred App
  3. Aug 11, 2011
    Created alfred-caffeine-controls — Control Caffeine from Alfred App
  4. Dec 23, 2011
    Created alfred-tunnelblick — Work with Tunnelblick directly from Alfredapp.
  5. Aug 2, 2016
    Most recent push to alfred-tunnelblick

07 · Compare

github.com/
phpfunk · 6dmedian coder

08 · Rubric

How this score was produced

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

CategoryWeightScoreContrib.
Raw total49.3
Top-end curve+2.5
Final overall51.7

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