Skip to main content

Ultimate Python Code Maintenance Toolkit

Project description

PyBoost Toolkit - Ultimate Python Code Maintenance Toolkit

PyBoost Toolkit is a comprehensive toolkit for cleaning, optimizing, and improving Python code. It integrates multiple tools into a single, easy-to-use package.

Features

PyBoost combines the following tools:

  1. pybackup - Create backups of Python files with timestamps
  2. rmcm - Remove comments and docstrings (optional)
  3. autoflake - Remove unused imports and variables
  4. pyupgrade - Upgrade to modern Python syntax
  5. isort - Sort imports
  6. black - Format code
  7. ruff - Lint and check for errors
  8. mypy - Static type checking (optional)
  9. bandit - Security checks (optional)
  10. vulture - Find dead code (optional)

Installation

Basic Installation

pip install pyboost-toolkit

Full Installation (with all optional tools)

pip install pyboost-toolkit[all]

Development Installation

pip install pyboost-toolkit[dev]

Installation from GitHub

pip install git+https://github.com/AlexandrosLiaskos/pyboost.git

Usage

Basic Usage

pyboost /path/to/your/python/project

Options

usage: pyboost [-h] [--no-bak] [--backup-dir BACKUP_DIR] [--skip SKIP]
               [--aggressive] [--backup-only] [--list-tools] [--verbose]
               directory

Ultimate Python Code Maintenance Toolkit

positional arguments:
  directory             Directory containing Python files to process

options:
  -h, --help            show this help message and exit
  --no-bak              Skip creating backup files (backups are stored in the
                        codebase by default)
  --backup-dir BACKUP_DIR
                        Directory to store backups (default: <codebase>/backup)
  --skip SKIP           Comma-separated list of tools to skip (e.g.,
                        'rmcm,mypy,bandit')
  --aggressive          Enable aggressive mode (includes comment removal and
                        other potentially destructive operations)
  --backup-only         Only create backups, don't process files
  --list-tools          List all available tools and exit
  --verbose, -v         Enable verbose output

Examples

Basic Usage

pyboost ~/projects/my_python_project

Skip Optional Tools

pyboost ~/projects/my_python_project --skip=mypy,bandit,vulture

Aggressive Mode (includes comment removal)

pyboost ~/projects/my_python_project --aggressive

Backup Only

pyboost ~/projects/my_python_project --backup-only

Custom Backup Directory

pyboost ~/projects/my_python_project --backup-dir ~/backups/python_projects

Individual Tools

PyBoost also provides access to individual tools:

PyBackup

Create backups of Python files with timestamps.

pybackup /path/to/your/python/project

PyRMCM (Remove Comments)

Remove comments and docstrings from Python files.

pyrmcm input_file.py output_file.py

PyFormat

Format Python files by removing comments and applying Black.

pyformat /path/to/your/python/project

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

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

License

This project is licensed under the MIT License - see the LICENSE file for details.

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

pyboost_toolkit-0.1.0.tar.gz (19.1 kB view details)

Uploaded Source

Built Distribution

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

pyboost_toolkit-0.1.0-py3-none-any.whl (20.7 kB view details)

Uploaded Python 3

File details

Details for the file pyboost_toolkit-0.1.0.tar.gz.

File metadata

  • Download URL: pyboost_toolkit-0.1.0.tar.gz
  • Upload date:
  • Size: 19.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for pyboost_toolkit-0.1.0.tar.gz
Algorithm Hash digest
SHA256 3d565a33b9e7e12b50766b8ab5284fcf894238ea42ccc8854c9b249f416c7fa4
MD5 3e85a9b47048f382f25da83256509ad2
BLAKE2b-256 a3e4d2aa884ce3d0788a05216e1944866c391aa42df0b23ada07e97567616aa9

See more details on using hashes here.

File details

Details for the file pyboost_toolkit-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for pyboost_toolkit-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 650ef04649d5ab260fbffa9777832c197a7fedd5957c2bbcfe0e5630af95af44
MD5 a2ea3b3655c23e6392cc58c15cbb57ef
BLAKE2b-256 38c13ebe8af0b3f4760330c0a4f5991f9655da8f5d7d048044850992c35c418c

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