Skip to main content

Lightweight tool to extract and analyze Python requirements.

Project description

📦 reqbuddy – Python Requirement File Helper

PyPI Python License

A lightweight Python utility for managing requirements.txt files and discovering installed packages. It includes both a Python API and CLI for convenience.

📌 Available on PyPI: https://pypi.org/project/reqbuddy/

✨ Features

  • 🔍 Read & clean requirements.txt
  • 📄 Generate requirements.txt from the current environment
  • 🧹 Strip version constraints if needed
  • 🖥️ CLI support: reqbuddy get, reqbuddy find
  • ♻️ Remove duplicate entries

🔧 Installation

 pip install reqbuddy

🚀 CLI Usage

# Generate requirements.txt from current environment
reqbuddy find

# Read and print requirements
reqbuddy get

🧑‍💻 Python Usage

from reqbuddy import find_requirement, get_requirement

# Generate requirements.txt
genreqs = find_requirement(strip=False, save=True)
print(genreqs)

# Read existing requirements.txt
reqs = get_requirement(strip=True)
print(reqs)

✅ Requirements

  • Python 3.8+

🛠️ For Developers: Automated Releasing

This project includes a helpful script: release.sh

✨ What it does:

  • ✅ Bumps the version in pyproject.toml
  • 📝 Updates CHANGELOG.md with your message
  • 🏷 Creates a Git tag (e.g., v0.1.7)
  • 🚀 Pushes the tag and code to GitHub
  • 📦 Triggers GitHub Actions to publish to PyPI
  • 📢 Creates a GitHub Release page
  • ✅ Confirms the new version is live on PyPI

🧪 How to use it

./release.sh 0.1.7 "Add CLI command and improve requirement detection"

Make sure:

  • You’ve installed the GitHub CLI
  • You’re authenticated (gh auth login)

📝 License

MIT License

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/new-feature)
  3. Commit your changes (git commit -am 'Add new feature')
  4. Push to the branch (git push origin feature/new-feature)
  5. Create a Pull Request

🙋‍♂️ Author

Astin Biju
Feel free to connect on LinkedIn or message me for questions or collaboration.

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

reqbuddy-0.1.9.tar.gz (5.4 kB view details)

Uploaded Source

Built Distribution

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

reqbuddy-0.1.9-py3-none-any.whl (5.8 kB view details)

Uploaded Python 3

File details

Details for the file reqbuddy-0.1.9.tar.gz.

File metadata

  • Download URL: reqbuddy-0.1.9.tar.gz
  • Upload date:
  • Size: 5.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for reqbuddy-0.1.9.tar.gz
Algorithm Hash digest
SHA256 e36f616ec543904983b03ec6483bcdc2cb3e7584f7ae4b022507b8c9a89cd20a
MD5 0a85b8bd4683292c48d7b06cceeef097
BLAKE2b-256 546679bbef4d2b915ceb2a8fd01687816ecc9bf192bf7764176d403a81a2ad2b

See more details on using hashes here.

File details

Details for the file reqbuddy-0.1.9-py3-none-any.whl.

File metadata

  • Download URL: reqbuddy-0.1.9-py3-none-any.whl
  • Upload date:
  • Size: 5.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for reqbuddy-0.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 acd3e16748c44569e0b8d570908f923a548e33a1bd35d5e9424939b6380bc4f0
MD5 d76386c3342d8efe3be55d3a89f8c135
BLAKE2b-256 e17a51a4690f88fb1d5a8ab276706352a7064be1d39148e4a434af31d96aea3c

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