The contents of this website are created with the greatest possible care. However, we cannot guarantee the accuracy, completeness, or timeliness of the content.
This website uses the GitHub API. GitHub is a service of GitHub Inc., 88 Colin P Kelly Jr St, San Francisco, CA 94107, USA. Usage is subject to the GitHub Terms of Service.
Code analysis runs entirely in your browser. No source code is ever sent to or stored on our servers.
GitHub OAuth Login: You sign in via GitHub OAuth. We receive your GitHub username and an OAuth token. The token is used solely for API access and stored only in your browser (session storage — never in the URL). We do not store your token on our servers.
Analysis Results (Cards): When you run an analysis, the result (archetype, score, statistics — no source code) is saved on our server as a JSON file so your card is accessible via a share link.
Leaderboard (Opt-in): The leaderboard is entirely voluntary. After analyzing yourself, you can choose to join by clicking "Join Leaderboard". Only then will your username, archetype, and score appear publicly. You can remove yourself at any time.
No Tracking: We use no cookies, no Google Analytics, no tracking of any kind.
3. GitHub API & OAuth
This website uses the GitHub REST API and GitHub OAuth. Your browser calls the GitHub API to retrieve repository data and file contents. The OAuth flow runs through our server (token exchange), but the token is only returned to your browser. GitHub Privacy Policies apply.
4. Hosting & Storage
This website is hosted on a server in Frankfurt, Germany (OVH). The server may collect technical log data (IP address, timestamp, browser type). Analysis results are stored as JSON files on the server (username, score, statistics — no source code).
5. Deletion & Your Rights
You can delete your leaderboard entry yourself at any time (the leaderboard is opt-in only). To delete your stored card, contact us at the email address above. You have the right to access, rectification, deletion, and restriction of processing of your data under GDPR.
6. Changes
This privacy policy may be updated occasionally. The current version is always available on this page.
Last updated: February 2026
How Scoring Works
What We Analyze
We scan your actual source code — not stars, not commit frequency, not contribution graphs. The analysis runs entirely in your browser. No code is ever sent to our servers.
8 Dimensions of Code
Every developer has a unique fingerprint across these dimensions, each scored 0–10:
Comment Ratio — Do you document your code? We look for a healthy balance — too few comments and too many are both flags.
Small Functions — Do you write focused, single-purpose functions? We look at the distribution, not just the average — one monster function won't ruin your score if the rest is clean.
Error Handling — Do you handle edge cases? We go beyond counting try/catch blocks — empty catches and log-only handlers are spotted and scored differently.
Naming Consistency — Do you stick to conventions? We measure this per language — using snake_case in Python and camelCase in JavaScript is perfectly consistent.
Low Complexity — How deeply nested is your logic? Flat, readable code scores higher. We look at both typical and worst-case nesting in your codebase.
Cleanliness — How clean is your code? Magic numbers, unexplained constants, and forgotten TODOs all factor in — but we understand that some TODOs show healthy awareness of tech debt.
Lang Diversity — How many languages do you work with? Only languages you actually use significantly count — a few lines of config don't make you a polyglot.
Modularity — How well-connected is your code? We look at how you structure dependencies. There's a sweet spot — too few imports means monolithic code, too many can mean over-engineering.
Two Scores, One Profile
Code Score (0–100) — Pure code quality. The weighted average of all 8 dimensions. This answers: "How good is your code?" It doesn't care how many repos you have or how much you push. A newcomer writing clean code can score higher than a veteran with sloppy habits.
Dev Score — Code quality × activity. This answers: "How active and productive are you?" It factors in:
Code quality — Your Code Score across all 8 dimensions
Codebase size — More analyzed code gives a boost, but sublinearly — you can't game it by quantity alone
Recent activity — Active repositories are weighted more heavily than dormant ones
Experience — A long track record gives a small bonus, but it doesn't dominate
Your card shows both: Code Score big, Dev Score below. The leaderboard displays both so you can compare on quality or on productivity.
We don't publish exact weights to prevent gaming. We do publish what we detect and why it matters.
Filtering & Fairness
We put significant effort into making the analysis fair:
Forks are excluded — we only analyze code you wrote
Libraries, vendor code, generated files, and minified bundles are filtered out
Very small and very large files are skipped (stubs and data dumps aren't representative)
We use stratified sampling for large repos to get a representative cross-section
Language-specific conventions are respected (naming, imports, error handling patterns)
Well-known numeric values (HTTP codes, common ports, powers of 2) aren't flagged as magic numbers
Minimum activity thresholds prevent empty or trivial profiles from appearing on the leaderboard
Philosophy
A newcomer writing clean code can beat a veteran with thousands of dormant repos. We believe in measuring how you write code, not how much attention your repos get.
This is a heuristic assessment, not absolute truth. No automated tool can fully capture code quality — but we think analyzing real code beats counting stars.
The scoring system evolves as we learn. Last updated: February 2026.
// FAQ
Vanity metric?
Real code signals. Not stars.
Black box?
We show detected patterns. No magic. Analysis runs in your browser — no code touches our servers.
Language bias?
language-aware scoring. Import sweet spots, naming conventions, error patterns — all calibrated per language. LOC-weighted.
Go/Rust ≠ exceptions
We score idioms: errors.Is/As%w?.context()guard letmap_err. Not try/catch density.