Skip to main content

some used tool collections

Project description

zxtoolbox

A collection of tools for frequently performed repetitive tasks on Windows, Mac, and Linux systems

![](./assets/imags/logo.png)

English | Chinese

0x01. Install

uv tool install zxtoolbox

0x02. Common Commands

Markdown to PDF

# Convert a single Markdown file
zxtool mkpdf ./README.md

# Merge a Markdown directory into one PDF
zxtool mkpdf ./docs -o ./dist/docs.pdf

Notes:

  • Supports common Markdown styling: headings, lists, tables, blockquotes, code blocks, and images
  • In directory mode, it reads README.md by default, or a custom entry file via --file
  • Mermaid is bundled locally by default, so offline rendering works without a CDN
  • A local Edge, Chrome, or Chromium installation is required for headless PDF printing

Full usage is documented in docs/mkpdf_manager.md.

0x03. Directory Structure

toolbox/
├── doc/                    # Documentation directory
│   ├── index.md           # Project documentation
│   ├── computer_info.md   # Computer information retrieval documentation
│   ├── config_manager.md  # Configuration file management documentation
│   ├── git_config.md      # Git repository configuration documentation
│   ├── letsencrypt.md     # Let's Encrypt certificate documentation
│   ├── mkdocs_manager.md  # MkDocs project management documentation
│   ├── ssl_cert.md        # SSL certificate generation documentation
│   └── video_download.md  # Video download documentation
├── src/                   # Source code directory
│   └── zxtoolbox/         # Main package
│       ├── __init__.py    # Package initialization
│       ├── cli.py         # Command-line entry point
│       ├── computer_info.py    # Computer information retrieval
│       ├── config_manager.py   # Configuration file management
│       ├── git_config.py       # Git repository configuration management
│       ├── letsencrypt.py      # Let's Encrypt certificate management
│       ├── mkdocs_manager.py   # MkDocs project management
│       ├── pyopt_2fa.py        # 2FA tool
│       ├── ssl_cert.py         # SSL certificate generation
│       ├── video_download.py   # Video download
│       └── test/          # Test directory
├── pyproject.toml        # Project configuration and dependencies
├── README.md             # Project description
└── uv.lock               # uv locked dependency versions

0x04. Dependencies

Core Dependencies

Package Purpose Website
paramiko SSH connections paramiko.org
prettytable Table formatting github.com
psutil System information psutil.readthedocs.io
py-cpuinfo CPU information github.com
nvidia-ml-py NVIDIA GPU information github.com
pyotp 2FA one-time passwords github.com
yt-dlp Video downloading github.com
pyyaml YAML parsing pyyaml.org
acme ACME protocol (Let's Encrypt) github.com
cryptography Cryptographic functions cryptography.io
requests HTTP requests requests.readthedocs.io
mkdocs Documentation site building mkdocs.org
mkdocs-smzhbook-theme MkDocs theme github.com
Markdown Markdown rendering python-markdown.github.io

0x05. Running Unit Tests

The project uses pytest as the testing framework. Test files are located in the src/zxtoolbox/test/ directory.

Install Test Dependencies

uv add --dev pytest

Run All Tests

uv run pytest src/zxtoolbox/test/ -v

Run Single Test File

uv run pytest src/zxtoolbox/test/test_cli.py -v

Run Specific Test Class or Method

# Run specific test class
uv run pytest src/zxtoolbox/test/test_cli.py::TestCliGit -v

# Run specific test method
uv run pytest src/zxtoolbox/test/test_cli.py::TestCliGit::test_git_config_check -v

View Test Coverage

uv add --dev pytest-cov
uv run pytest src/zxtoolbox/test/ --cov=zxtoolbox --cov-report=term-missing

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

zxtoolbox-1.10.13.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

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

zxtoolbox-1.10.13-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file zxtoolbox-1.10.13.tar.gz.

File metadata

  • Download URL: zxtoolbox-1.10.13.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.6

File hashes

Hashes for zxtoolbox-1.10.13.tar.gz
Algorithm Hash digest
SHA256 882e4b3a6499220584b8a7d83956b10b916112b83bada38485376f3fe5a2f8ea
MD5 2d616c1391b1a9c4bd2a720a3fb8324e
BLAKE2b-256 271ede8954eb4675eaa4a2a3c8366fbce3a094216df516d3d9025eb058267127

See more details on using hashes here.

File details

Details for the file zxtoolbox-1.10.13-py3-none-any.whl.

File metadata

  • Download URL: zxtoolbox-1.10.13-py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.6

File hashes

Hashes for zxtoolbox-1.10.13-py3-none-any.whl
Algorithm Hash digest
SHA256 f3f9699a4cb6f7c39c7c1ec6e570cd7d99a3115f78b7ebcd8e68f26c4cfb7aa1
MD5 5b2218e2f0c9e67f142d4e91006fde72
BLAKE2b-256 616e3b95310ee4482779027e0a478300653712ffe262786948f57c24d344103b

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