Skip to main content

Environment health checker that validates Python runtime, OS, dependencies, variables and system readiness

Project description

envhealth

PyPI version Downloads License

EnvHealth is a powerful Python utility to check system environment health.

Features

  • Operating System details
  • CPU usage and core stats
  • RAM usage
  • Disk usage
  • CUDA GPU availability + performance benchmark
  • Internet connection diagnostics
  • Proxy configuration detection

Supports multiple report formats:

  • Pretty terminal output
  • JSON
  • HTML
  • PDF

Installation

You can install envhealth via pip:

pip install envhealth

Usage

CLI Usage

  • Run the environment checker in the console:
        envhealth
    
  • Generate HTML, JSON, or Markdown reports:
        envhealth --html
        envhealth --json
        envhealth --pdf
    

Programatic Usage

  • Use envhealth in your Python scripts:
    from envhealth import Checker, Reporter
    
    chk = Checker()
    data = chk.full_report()
    
    rep = Reporter(data)
    print(rep.pretty_text())
    rep.to_pdf()
    

Sample Output

Console Output

    === SYSTEM ===
    os: Windows
    os_version: 10.0.19045
    hostname: PC
    architecture: AMD64
    processor: Intel(R) Core(TM) i5
    python_version: 3.11

    === CPU ===
    physical_cores: 4
    total_cores: 8
    cpu_usage_percent: 12.5

    === MEMORY ===
    total_gb: 16.0
    available_gb: 9.1
    used_percent: 43

    === DISK ===
    total_gb: 512
    used_gb: 320
    free_gb: 192
    used_percent: 62.5

    === CUDA ===
    cuda_available: True
    gpu_name: NVIDIA RTX 3060
    benchmark_time_sec: 0.1182

    === INTERNET ===
    connected: True
    status_code: 200

    === PROXY ===
    proxy_enabled: False

JSON Output

    {
    "system": {
        "os": "Windows",
        "hostname": "PC"
    },
    "cpu": {
        "physical_cores": 4,
        "cpu_usage_percent": 11.3
    },
    "cuda": {
        "cuda_available": true,
        "gpu_name": "RTX 3060"
    },
    "internet": {
        "connected": true
    }
    }

HTML Output

Produces file envhealth_report.html which contains

    <h1>EnvHealth Report</h1>
    <h2>SYSTEM</h2>
    <li><b>os</b>: Windows</li>
    <li><b>hostname</b>: PC</li>
    ...

Support

Supported Platforms:

  • Windows
  • Linux
  • macOS

TODO

  • Roadmap
  • CUDA performance check
  • Internet & proxy diagnostics
  • PDF export
  • GUI dashboard / VS Code integration

License

License: MIT

🤝 Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

⭐ Support

If you find this useful, please star the repository.

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

envhealth-0.1.2.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

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

envhealth-0.1.2-py3-none-any.whl (7.5 kB view details)

Uploaded Python 3

File details

Details for the file envhealth-0.1.2.tar.gz.

File metadata

  • Download URL: envhealth-0.1.2.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for envhealth-0.1.2.tar.gz
Algorithm Hash digest
SHA256 68660cb01bd6195805c85f3eebe426d3a6df532eabf445eca1460708dd5d7077
MD5 14c73c18b7656dc6af19b26b9e4dc238
BLAKE2b-256 6d735fb8f6ed514334e35a76926ec2c7a0bae418d7ed5f18f4c185a72a103f53

See more details on using hashes here.

File details

Details for the file envhealth-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: envhealth-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 7.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for envhealth-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 bf096d0645f81af63b0020d56d057efd7caa0d45c8a0ee47c92232c6d94c82e2
MD5 1097adfa861778a1c41dca48334b4dca
BLAKE2b-256 14a08602c78a8ee013cf586cd3f3a44fe145bc7fc55ed60347bf481df8214caa

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