Metadata-Version: 2.4
Name: utopia-analyzer
Version: 1.0.0
Summary: Transforms any GitHub profile into a professional developer intelligence report
Author-email: Khizer Arain <your@email.com>
License: MIT License
        
        Copyright (c) 2024 Khizar Arain
        
        Permission is hereby granted, free of charge, to any person obtaining a copy
        of this software and associated documentation files (the "Software"), to deal
        in the Software without restriction, including without limitation the rights
        to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
        copies of the Software, and to permit persons to whom the Software is
        furnished to do so, subject to the following conditions:
        
        The above copyright notice and this permission notice shall be included in all
        copies or substantial portions of the Software.
        
        THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
        IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
        FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
        AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
        LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
        OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
        SOFTWARE.
        
Project-URL: Homepage, https://github.com/khizerarain/utopia
Project-URL: Repository, https://github.com/khizerarain/utopia
Keywords: github,portfolio,cli,developer-tools,analytics
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Environment :: Console
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: click>=8.0
Requires-Dist: rich>=13.0
Requires-Dist: requests>=2.28
Requires-Dist: python-dotenv>=1.0
Dynamic: license-file

# 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

```bash
pip install utopia-cli
```

## Usage

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

## Publishing to PyPI (for maintainers)

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

## Built With

- [Python](https://www.python.org/) — core language
- [Click](https://click.palletsprojects.com/) — CLI framework
- [Rich](https://rich.readthedocs.io/) — terminal formatting and charts

## Development Installation

1. Clone the repository:

```bash
git clone https://github.com/khizerarain/utopia.git
cd utopia
```

2. Install dependencies:

```bash
pip install -r requirements.txt
```

## Development Usage

```bash
# 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

```bash
python -m pytest tests/ -v
```

## License

MIT
