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.8.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.8-py3-none-any.whl (5.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: reqbuddy-0.1.8.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.8.tar.gz
Algorithm Hash digest
SHA256 03ba9054b235ed97c8033ea9da1bc4a3cbb3271508be2650afc9fef048379c93
MD5 e7786d66b02421a8fdd9e590f7206927
BLAKE2b-256 09b520aa3a231d9b01774a433d0e5e70ee9c41a93d7f5be18021e55eeb7b6737

See more details on using hashes here.

File details

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

File metadata

  • Download URL: reqbuddy-0.1.8-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.8-py3-none-any.whl
Algorithm Hash digest
SHA256 a47d98302a76c07fa66fa8d64525f5738a13627e59e51b776c579f18ca2114ba
MD5 13216037a622c5a38d8d9ff64e21f8a2
BLAKE2b-256 4f5dcb4edac6b2dd3e57532e32d74867c52c086760d6682362f9b9a2bb0aabd0

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