Skip to main content

Automatic, AST-based dependency inference from Python imports. Stop writing dependencies twice.

Project description

pypm - Python Project Manager

pypm is a smart, zero-config CLI tool that automatically infers dependencies from your Python source code.

Stop writing dependencies twice. Let your imports define your project.

pypm uses AST-based parsing to detect imports, resolves them to PyPI packages (handling distinct names like PIL -> Pillow), and generates a pyproject.toml for you.

Features

  • Smart Inference:Scans your project for .py files and extracts all imports.
  • Auto-Resolution: Maps imports (e.g., import cv2) to their actual PyPI packages (e.g., opencv-python).
  • Standard Library Detection: Automatically ignores Python standard library modules.
  • Zero Config: No need to manually list dependencies in requirements.txt or pyproject.toml.
  • Modern Standards: Generates PEP 621 compliant pyproject.toml files.

Installation

(Coming soon - for now, clone and run locally)

git clone https://github.com/Suriyakumardurai/pypm.git
cd pypm
pip install .

Quick Start

  1. Infer Dependencies: Scan your current directory and update pyproject.toml.

    pypm infer
    
  2. Install Dependencies: Install the inferred packages (uses uv if available, else pip).

    pypm install
    

Documentation

For full documentation, see docs/index.md.

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

pypm_cli-0.0.1.tar.gz (15.4 kB view details)

Uploaded Source

Built Distribution

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

pypm_cli-0.0.1-py3-none-any.whl (16.0 kB view details)

Uploaded Python 3

File details

Details for the file pypm_cli-0.0.1.tar.gz.

File metadata

  • Download URL: pypm_cli-0.0.1.tar.gz
  • Upload date:
  • Size: 15.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.0

File hashes

Hashes for pypm_cli-0.0.1.tar.gz
Algorithm Hash digest
SHA256 5d42ba00729332802c92490b37171510637b9ab7b05a7892361178aa6eaa6bfe
MD5 bc978d90250fd72146e7236d6755b1d0
BLAKE2b-256 0427a13444ce738104d7bbf1773fcdd73768e34acd38d68ea8aea1a09f8fb3b6

See more details on using hashes here.

File details

Details for the file pypm_cli-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: pypm_cli-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 16.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.0

File hashes

Hashes for pypm_cli-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 facf423db64e90269be6b4b76dae6fff482532154a8eccc3901eb15b404992cb
MD5 b0cff74ee7b8a7f9b8802a1261ba48ad
BLAKE2b-256 7be8442de921c88536a5497968a05712569dd39311753be978b48cae026dbdde

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