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

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.8.13.tar.gz (979.1 kB view details)

Uploaded Source

Built Distribution

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

zxtoolbox-1.8.13-py3-none-any.whl (993.5 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for zxtoolbox-1.8.13.tar.gz
Algorithm Hash digest
SHA256 fba02f7b17e9940d20418c4249a08ca6f41fbf19c9f66e42cd36f6f92c5c1212
MD5 82521832e79c1a779a3a383ac5c45054
BLAKE2b-256 e688d7d6b5a110aa1a25d17e3d2ab69ef729236e03696f770b4d43272a68e39e

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for zxtoolbox-1.8.13-py3-none-any.whl
Algorithm Hash digest
SHA256 18f2d7775d19080d73ebda75919e72d168ee3ca073280ce9f900c1af4da4320f
MD5 c3b28c90b2a7c7a693f816636fd5c2a3
BLAKE2b-256 22cfc99cf36322a22ef023ebc42219eea63554ac23b523a13131941d400b8e9b

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