📦 reqbuddy – Python Requirement File Helper
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.mdwith 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
- Fork the repository
- Create a feature branch (
git checkout -b feature/new-feature) - Commit your changes (
git commit -am 'Add new feature') - Push to the branch (
git push origin feature/new-feature) - Create a Pull Request
🙋♂️ Author
Astin Biju
Feel free to connect on LinkedIn or message me for questions or collaboration.
Release files for reqbuddy 0.1.9
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| reqbuddy-0.1.9.tar.gz | 5.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| reqbuddy-0.1.9-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 11.2 kB
Release files / reqbuddy-0.1.9.tar.gz
| Download URL | reqbuddy-0.1.9.tar.gz |
|---|---|
| Size | 5.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e36f616ec543904983b03ec6483bcdc2cb3e7584f7ae4b022507b8c9a89cd20a
|
|
BLAKE2b-256 checksum How to use checksums |
546679bbef4d2b915ceb2a8fd01687816ecc9bf192bf7764176d403a81a2ad2b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.13
|
Release files / reqbuddy-0.1.9-py3-none-any.whl
| Download URL | reqbuddy-0.1.9-py3-none-any.whl |
|---|---|
| Size | 5.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
acd3e16748c44569e0b8d570908f923a548e33a1bd35d5e9424939b6380bc4f0
|
|
BLAKE2b-256 checksum How to use checksums |
e17a51a4690f88fb1d5a8ab276706352a7064be1d39148e4a434af31d96aea3c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.13
|