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

Uploaded Python 3

File details

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

File metadata

  • Download URL: reqbuddy-0.1.7.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.7.tar.gz
Algorithm Hash digest
SHA256 030f1a688b15c4eddedb917544744c1f96282f7498cedbe0f276cfe063bba9d5
MD5 21dfeadf9da1fb532da20585c36bb3ab
BLAKE2b-256 279f9eaa9f1e24e0b1ec1f2f0cece44ca93c05971717a6ea5a08ccab85e143b6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: reqbuddy-0.1.7-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.7-py3-none-any.whl
Algorithm Hash digest
SHA256 77a78ad63d9f5f10bd2e74f43d2a753cf578d1c98e5ca2d7892e6716000e9af1
MD5 952593faee4cc14dde22f9a156758da0
BLAKE2b-256 ed415985efd59a1bb819bfda9eb9d9ace5455ecfc86e99db089bd20ad2afe713

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