01 · Roasts
Zero Stars Across the Board
Three repos, 0 total stars, 0 forks on any owned project. Even your mum hasn't starred fruit-samurai.
The Profile README Has CI and the Game Doesn't
joshuabode (the repo that is literally just your face) has CI=yes. fruit-samurai, your most complex project with physics and collision detection, has CI=no. Priorities: questionable.
99 Commits and Half the Year Was Empty
totalCommitsYear=99 sounds decent until you look at the heatmap — weeks 1–10 are a wasteland of zeros. You commit in bursts then disappear like a coursework deadline machine.
4 KB of Assembly, 0 Tests
stacker.s is a custom ISA Stack game written in raw Assembly — genuinely cool — and yet you shipped it with no tests, no CI, and a README that's just a video link. The effort-to-documentation ratio is inverted.
1 PR All Year
totalPRsYear=1 and totalIssuesYear=0. You have 17 followers and contributed to the open-source ecosystem exactly once. The 'ex-Intern @finimize' bio is doing a lot of heavy lifting.
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% weight25F
- Consistency20% weight35F
- Quality20% weight40D
- Depth15% weight35F
- Breadth10% weight55D
- Community10% weight25F
03 · Stats
365-day commit heatmap
92 active days
Language distribution
- Python75%
- Assembly19%
- Go5%
- Shell1%
04 · Numbers
Owned repos
non-fork
6
Commits
last 12 months
99
Followers
17
Joined GitHub
Mar 2020
05 · Top repos
joshuabode /
fruit-samurai
University coursework Fruit Ninja clone built with Tkinter and Python. Typed language (Python), structured multi-file architecture (app.py, game.py, fruit.py, bomb.py, leaderboard.py), clear documentation in README, but no test suite or CI pipeline.
joshuabode /
stacker.s
Experimental assembly-language Stack game for custom Stump ISA. Minimal output (4 KB), bare-bones documentation via video-only README, no tests/CI. Demonstrates language-specific niche work but lacks structure and clarity typical of polished projects.
joshuabode /
joshuabode
Personal profile README with no code artifacts, minimal structure, and no substantive project content. Serves as a GitHub profile landing page only.
06 · Timeline
- Mar 31, 2020Joined GitHub
- Dec 22, 2024Created fruit-samurai — A game made with Tkinter and Python as part of my university course work. Inspired by Halfbrick's Fruit Ninja
- Mar 22, 2025Created joshuabode
- Jan 23, 2026Created stacker.s — An assembly implementation of a small game inspired by Ketchapp's Stack in the Stump ISA
- Apr 24, 2026Most recent push to joshuabode
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.