Skip to main content

UTOPIA

Analyze any GitHub profile and generate a professional developer portfolio report with scoring, archetypes, and recruiter insights.

UTOPIA (Ultimate Technical Overview & Portfolio Intelligence Analyzer) is a Python CLI tool that transforms any public GitHub profile into a detailed intelligence report. It scores the profile across six weighted categories, detects the developer's archetype, simulates an AI recruiter verdict, breaks down the tech stack, roasts bad habits (if asked nicely), and generates a 30-day improvement plan.

Installation

pip install utopia-cli

Usage

utopia khizerarain
utopia khizerarain --roast
utopia khizerarain --output markdown --save report.md
utopia khizerarain --token YOUR_GITHUB_TOKEN

Publishing to PyPI (for maintainers)

pip install build twine
python -m build
twine upload dist/*

Built With

  • Python — core language
  • Click — CLI framework
  • Rich — terminal formatting and charts

Development Installation

  1. Clone the repository:
git clone https://github.com/khizerarain/utopia.git
cd utopia
  1. Install dependencies:
pip install -r requirements.txt

Development Usage

# Basic terminal report
python -m utopia.cli torvalds

# Use a GitHub token for higher rate limits
python -m utopia.cli torvalds --token ghp_xxxxxxxx

# Roast mode
python -m utopia.cli torvalds --roast

# Save as JSON
python -m utopia.cli torvalds --output json --save report.json

# Save as Markdown
python -m utopia.cli torvalds --output markdown --save report.md

# Disable colors
python -m utopia.cli torvalds --no-color

# Refresh cached data
python -m utopia.cli torvalds --no-cache

Sample Output

┌───────────────────────────────────┐
│ UTOPIA Portfolio Report: torvalds │
│ UTOPIA SCORE: 80/100              │
│ Portfolio Grade: B-               │
└───────────────────────────────────┘

Project Quality │ 23/25 │ ████████████████████████████░░ 92%
Activity        │ 20/20 │ ██████████████████████████████ 98%
Documentation   │ 11/15 │ ██████████████████████░░░░░░░░ 72%
Tech Diversity  │  2/15 │ ████░░░░░░░░░░░░░░░░░░░░░░░░░░ 13%
Impact          │ 15/15 │ ██████████████████████████████ 100%
Open Source     │ 10/10 │ ████████████████████████████░░ 95%

You are:
  Backend Engineer       ██████████████░░░░░░  70.0%
  DevOps Engineer        ██████████████░░░░░░  70.0%
  AI/ML Developer        ██████████░░░░░░░░░░  50.0%
  Data Engineer          ██████████░░░░░░░░░░  50.0%

Would I hire this developer?
YES

Reasons:
  ✓ Projects show ongoing maintenance
  ✓ Projects are well explained
  ✓ Repositories show solid engineering
  ✓ Includes automated tests

Strengths:
  ✓ Strong community impact
  ✓ Active development history
  ✓ Active open-source contributor

Weaknesses:
  ✗ Tech stack is narrow
  ✗ Needs more README documentation
  ✗ Project quality could improve

Tech Stack Breakdown
  C              ████████████████████  97.7%
  Assembly       ░░░░░░░░░░░░░░░░░░░░   0.7%
  Shell          ░░░░░░░░░░░░░░░░░░░░   0.4%
  Rust           ░░░░░░░░░░░░░░░░░░░░   0.3%
  Other          ░░░░░░░░░░░░░░░░░░░░   0.9%

30-Day Upgrade Plan
Week 1:
  • Contribute to an open-source project outside your main stack
Week 2:
  • Improve README files across your top repos
Week 3:
  • Refactor your most-starred project and add missing features
Week 4:
  • Review and merge community PRs in your own repos

GitHub Token

GitHub's unauthenticated API limit is 60 requests per hour. For full analysis, create a Personal Access Token:

  1. Go to Settings → Developer settings → Personal access tokens → Tokens (classic)
  2. Generate a new token with public_repo scope
  3. Use --token <PAT> or set GITHUB_TOKEN in a .env file

Running Tests

python -m pytest tests/ -v

License

MIT

Metadata

Release files for utopia-analyzer 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for utopia-analyzer 1.0.0
File Size Uploaded
utopia_analyzer-1.0.0.tar.gz 30.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for utopia-analyzer 1.0.0
File Interpreter ABI Platform
utopia_analyzer-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 57.8 kB

Release files / utopia_analyzer-1.0.0.tar.gz

Download URL utopia_analyzer-1.0.0.tar.gz
Size 30.1 kB
Tags Source
SHA-256 checksum
How to use checksums
74847dc9b152f57305c6e23249741e6ad194049aec7975e3821e61b7547438c0
BLAKE2b-256 checksum
How to use checksums
9d7244e517e22fa9c4e107574ab6f020f040620a2cc68807dd654d0bf85cca15
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.7

Release files / utopia_analyzer-1.0.0-py3-none-any.whl

Download URL utopia_analyzer-1.0.0-py3-none-any.whl
Size 27.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
df3ce99c0de557311907d5f2169a98fc66f7a22448f51cf5a064b6e0bc54d81e
BLAKE2b-256 checksum
How to use checksums
c23b6da7422d245f00fbb9849072c1886739a781b5f0a739e816c8f87b24ba1b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.7

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page