01 · Roasts
The Heatmap Time Traveler
549 commits in a year, and 545 of them happened in the last 3 weeks. Your GitHub graph looks like a flatline followed by a defibrillator shock. Did you discover coding in August 2026?
Prolific in a Phone Booth
13 named accounting tools, 0 forks, 1 star (your own repo, probably). You've built an entire SaaS product suite for Australian tax compliance and the market response is one polite golf clap.
Python Monogamist
94% Python across 32 repos. You've got VBA, Power Query, and JavaScript all clocking in at 1% like interns who showed up once. Diversity is a langPct above single digits, Ryan.
The 508 PR Paradox
totalPRsYear = 508, but your portfolio README documents exactly 9 merged external contributions. That's either the most aggressive Dependabot setup in Australian tax history or some very creative counting.
Speed-Running Architecture
DiogenesLamp: complex scraper with age interpolation, hotlink protection, and 15+ test files — shipped in 2.5 hours. Ozzit: 130+ Excel LAMBDA functions — 30 commits in 2 days. You don't build software, you summon it.
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% weight68C
- Consistency20% weight65C
- Quality20% weight72B
- Depth15% weight65C
- Breadth10% weight40D
- Community10% weight40D
03 · Stats
365-day commit heatmap
19 active days
Language distribution
- Python94%
- PowerShell3%
- JavaScript1%
- Power Query1%
- VBA1%
- CSS0%
04 · Numbers
Owned repos
non-fork
16
Commits
last 12 months
548
Followers
1
Joined GitHub
Dec 2023
05 · Top repos
ryanduguid /
xero-trial-balance-export
Well-crafted Xero trial balance exporter: typed Python, comprehensive tests + CI, detailed docs covering OAuth2 token lifecycle and DPAPI security. Experimental/personal project with 0 stars but complete implementation solving a real accounting problem.
ryanduguid /
payday-super-checker
Specialized compliance tool for Australian payday super deadlines with rigorous legal implementation, comprehensive tests, and meticulous documentation. Personal project, no adoption yet but technically mature for its narrow domain.
ryanduguid /
monthly-close-control-plane
Review-first accounting control pack for trial-balance variance detection; typed Python with comprehensive tests, CI, and architectural documentation; narrow scope focused on human-led review gates.
ryanduguid /
DrDebits
Specialized guide for LLM-assisted Australian tax compliance, built with deterministic tooling and comprehensive test coverage. Strong documentation, structured build system, and integrity checks; early-stage adoption.
ryanduguid /
australian-accounting-skills
Nine distributable Claude Code skills for Australian accounting workflows (BAS, FBT, STP, month-end close); structured, documented, tested, with safety-critical boundaries enforced in code. Narrow use case (AU accountants only), minimal adoption metrics (1 star), but serious non-trivial output.
ryanduguid /
ato-benchmark-compare
Well-crafted Python CLI tool for comparing P&L figures against ATO benchmarks. Typed, documented, tested, ships with CI/CD. Personal project, newly launched (7 days old), no production adoption yet.
ryanduguid /
accounting-excel-toolkit
Personal Power Query and VBA toolkit for Australian accounting workflows; specialized domain solution with rigorous test automation, structured docs, and careful encoding/safety guards despite zero adoption signals.
ryanduguid /
au-tax-legislation-corpus
Python pipeline for building a corpus of Australian tax legislation from the Federal Register with markdown/JSONL outputs and rates index. No stars yet, early-stage project with comprehensive documentation and CI/tests.
ryanduguid /
ryanduguid
Portfolio index repo showcasing 13+ named accounting/AI tools and proven contribution history to external projects (9 merged PRs). Minimal own content (42 KB) but clear domain expertise and structured output across multiple repositories.
ryanduguid /
Ozzit
Python Excel LAMBDA library with 130+ financial functions (oz. prefix) shipped as ozzit.xlsx; zero stars, recent burst (30 commits in 2 days), untyped Python, has CI and license, comprehensive README but no source files sampled.
ryanduguid /
DiogenesLamp
Early-stage Python CLI tool for scraping Yupoo seller catalogs with thoughtful design and comprehensive test coverage, but unproven adoption and minimal visibility.
ryanduguid /
.github
Account-level GitHub community health defaults (CoC, templates, security/support guides) for accounting/payroll workflows. Small, focused, non-production repo with clear governance documentation and domain-specific issue template rationale.
06 · Timeline
- Dec 2, 2023Joined GitHub
- Aug 1, 2026Created australian-accounting-skills — AI agent skills for Australian public-practice accounting: BAS, FBT, Division 7A, STP, month-end close and workpapers.
- Aug 1, 2026Created accounting-excel-toolkit — Power Query and VBA tools for Australian accounting, Xero exports, reconciliation and month-end reporting.
- Aug 1, 2026Created xero-trial-balance-export — Export balanced Xero trial balances to validated CSV for Power BI, Excel and pandas with Python and OAuth 2.0.
- Aug 1, 2026Created ryanduguid — Accounting automation and AI-agent tools for Australian public practice.
- Aug 2, 2026Created payday-super-checker — Check Australian super contributions against the payday-super deadlines and estimate SG charge exposure on late ones.
- Aug 4, 2026Created au-tax-legislation-corpus — Build a provenance-rich corpus of in-force Commonwealth tax legislation for retrieval systems and AI agents.
- Aug 8, 2026Created monthly-close-control-plane — Review-first controls for trial-balance exports: deterministic integrity, variance and reconciliation exceptions for human review.
- Aug 11, 2026Created .github — Default community health files for @ryanduguid: code of conduct, issue forms and pull request template.
- Aug 13, 2026Created ato-benchmark-compare — Compare profit and loss figures against the ATO small business benchmarks, on your own machine, with the working shown
- Aug 16, 2026Created DrDebits — Versioned, source-linked Australian tax-practitioner ethics instructions for LLM-assisted work.
- Aug 17, 2026Created Ozzit — Australian LAMBDA function library for dynamic-array financial models in Excel
- Aug 19, 2026Created DiogenesLamp — Scrape public Yupoo seller catalogs into local JSON shards and cached thumbnails, then browse them offline in a fast, filterable viewer.
- Aug 19, 2026Most recent push to xero-trial-balance-export
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.