01 · Roasts
The Ghost Years
82% of your repos haven't been touched in over 2 years. Your GitHub is less a portfolio and more a graveyard with one flickering torch (web.d) keeping the lights on.
JavaScript Monoculture
95% JavaScript. You've discovered one language and planted your entire flag in it. The lone 1% Python from ttauto is doing the heavy lifting of pretending you have breadth.
Test-Free Living
Zero tests across every single repo scored. web.d has CI and a license, but not a single test file. You're shipping on vibes and Vercel logs.
Solo Act, No Audience
soloPct = 100%, 1 PR all year, 0 issues filed. You've been coding in a sealed room. Five followers — two of whom are probably bots — haven't changed that calculus.
ttauto: The Abandoned Side Hustle
Your TikTok compilation bot peaked at 2 stars and was quietly euthanized in October 2022. Code duplication between src/main.py and src/cloud_functions/main.py suggests it was never quite finished either.
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% weight28F
- Consistency20% weight55D
- Quality20% weight57D
- Depth15% weight55D
- Breadth10% weight40D
- Community10% weight25F
03 · Stats
365-day commit heatmap
124 active days
Language distribution
- JavaScript95%
- CSS2%
- Jupyter Notebook1%
- C++1%
- Python1%
- HTML0%
04 · Numbers
Owned repos
non-fork
11
Commits
last 12 months
95
Followers
5
Joined GitHub
Jul 2019
05 · Top repos
daniel-raad /
web.d
Personal website built with Next.js, TypeScript, and Firebase; features a dashboard for todos, habits, and Ironman training tracking with AI-powered chat. Moderately structured, documented via README, but no tests and low external adoption (0 stars).
daniel-raad /
ttauto
Personal YouTube automation project that downloads TikTok videos and creates compilations. Untyped Python, minimal docs, no tests/CI/license. ~21 commits over 11 months, functional but hacky structure.
daniel-raad /
daniel-raad
Profile README with personal bio and no code. 13 KB, 0 stars, minimal recent commits (11 of 30), no source files, no tests or CI. This is a GitHub profile showcase, not a software project.
06 · Timeline
- Jul 3, 2019Joined GitHub
- Nov 8, 2021Created ttauto — Youtube automation - creating compilation videos
- Jan 5, 2022Created web.d — My website
- Jan 24, 2022Created daniel-raad
- Apr 19, 2026Most recent push to web.d
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.