01 · Roasts
Ghost Town Heatmap
57 commits in a year sounds okay until you look at the heatmap — it's a sea of zeros interrupted by a few lonely pixels. Weeks 1–9 and 12–14 are completely dark. Haunted.
320-Project: The Nothing Burger
Your most recent repo, 320-Project, has 0 kilobytes of source code and a README that says literally '# 320-Project'. You committed a folder. That's it. That's the whole project.
Tests? CI? What Are Those?
0 for 3 on CI, 0 for 3 on tests. TaskWise has GPT-4 and a cross-platform mobile app but somehow couldn't find room for a single unit test or a GitHub Actions workflow.
1 PR in 365 Days
totalPRsYear=1. One. As in singular. As in you contributed to the open-source ecosystem roughly as much as someone who accidentally clicked a button.
Strong Language Breadth, Thin Shipping
TypeScript, Kotlin, Python, JavaScript — genuinely diverse. But that language spread is doing a lot of heavy lifting for a portfolio of 3 repos, one of which is empty.
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% weight52D
- Depth15% weight50D
- Breadth10% weight65C
- Community10% weight25F
03 · Stats
365-day commit heatmap
14 active days
Language distribution
- TypeScript63%
- Kotlin17%
- Python11%
- JavaScript7%
- CSS2%
- HTML1%
04 · Numbers
Owned repos
non-fork
7
Commits
last 12 months
57
Followers
4
Joined GitHub
May 2021
05 · Top repos
nehajoshi9 /
TaskWise
Full-stack TypeScript task management app with Next.js web and React Native mobile, Convex backend, and GPT-4 AI integration. Personal portfolio project with 0 stars, shipped with real features.
nehajoshi9 /
clinical-translator
Early-stage clinical LLM app synthesizing medical notes into structured JSON via Gemini + Firestore, with conversational updates; typed schema but untyped Python, no tests/CI, minimal architectural depth, likely personal/hackathon project.
nehajoshi9 /
320-Project
Empty scaffold repo created Feb 24, 2026 with minimal README and no source files, commits, tests, CI, or documentation. Appears to be initial project setup only.
06 · Timeline
- May 30, 2021Joined GitHub
- Jul 21, 2025Created TaskWise — Task Organization made simple, powered by AI
- Nov 2, 2025Created clinical-translator
- Feb 24, 2026Created 320-Project
- Feb 24, 2026Most recent push to 320-Project
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.