Skip to main content

Transforms any GitHub profile into a professional developer intelligence report

Project description

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

utopia_analyzer-1.0.0.tar.gz (30.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

utopia_analyzer-1.0.0-py3-none-any.whl (27.8 kB view details)

Uploaded Python 3

File details

Details for the file utopia_analyzer-1.0.0.tar.gz.

File metadata

  • Download URL: utopia_analyzer-1.0.0.tar.gz
  • Upload date:
  • Size: 30.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for utopia_analyzer-1.0.0.tar.gz
Algorithm Hash digest
SHA256 74847dc9b152f57305c6e23249741e6ad194049aec7975e3821e61b7547438c0
MD5 ec81e061884fd64079ffca87c431dc82
BLAKE2b-256 9d7244e517e22fa9c4e107574ab6f020f040620a2cc68807dd654d0bf85cca15

See more details on using hashes here.

File details

Details for the file utopia_analyzer-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for utopia_analyzer-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 df3ce99c0de557311907d5f2169a98fc66f7a22448f51cf5a064b6e0bc54d81e
MD5 d008ff254f27e2ea9e684a2801f8f747
BLAKE2b-256 c23b6da7422d245f00fbb9849072c1886739a781b5f0a739e816c8f87b24ba1b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page