Skip to main content

xpln is a CLI tool that explains terminal commands for you before you run them

Project description

xpln 🛠️

xpln is a python package made available as a CLI tool that explains terminal commands for you to understand what they do before you execute them.

📦Installation

xpln is available on PyPI under the package name xpln2me. It can be installed by running

pip install xpln2me

At this point, xpln should be globally accessible from the terminal!

[!NOTE] On linux, this may not be as straightforward due to restrictions of direct installations of non-Debian-packaged Python packages. It's recommended to use pipx install xpln2me for this instead which will automatically create a virtual environment to install the package and creates a symlink in /.local/bin/xpln pointing to the real executable

📌 Usage

Basic Usage

Run xpln on the terminal to begin, or xpln --help to get the available commands image

Example Usage

xpln this ls -al

⚙️ Technical Details

Tools Used

  • Python 3.12 - Core language
  • Poetry - Dependency & package management
  • Click/Typer - CLI framework
  • GitHub Actions - CI/CD automation

How xpln2me is Packaged

  • Python CLI tools can be packaged as:

    • sdist [Source Distribution] - Requires building before installation
    • Wheel (.whl) [Built Distribution] - Prebuilt, faster to install
  • This project uses Poetry to build and distribute both formats.

Versioning & Automated Releases

  • Uses Semantic Versioning: MAJOR.MINOR.PATCH
  • On PR merge, GitHub Actions:
    1. Bumps the version

      This is done by including special indicators in PR titles (commit messages to main)

      • #major - bumps the major version
      • #minor - bumps the minor version
      • Failure to include one of these bumps the patch version
    2. Creates a Git tag
    3. Publishes to PyPI the new version

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

xpln2me-1.0.0.tar.gz (6.5 kB view details)

Uploaded Source

Built Distribution

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

xpln2me-1.0.0-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

Details for the file xpln2me-1.0.0.tar.gz.

File metadata

  • Download URL: xpln2me-1.0.0.tar.gz
  • Upload date:
  • Size: 6.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.1 CPython/3.12.9 Linux/6.8.0-1021-azure

File hashes

Hashes for xpln2me-1.0.0.tar.gz
Algorithm Hash digest
SHA256 afb042e8eebcb07586db2fd792d3b3896eac94fc8aa99ea094e0f54c0111db5c
MD5 e893010fe1bdce7bd12210e999e31753
BLAKE2b-256 72c565341457d437c88ac47185704eb51d818f5e4b61cc74073812fc4c4eb727

See more details on using hashes here.

File details

Details for the file xpln2me-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: xpln2me-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 8.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.1 CPython/3.12.9 Linux/6.8.0-1021-azure

File hashes

Hashes for xpln2me-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6a5a5a9e55a73b95efdca1eb862ba4e7d5e9bcc6a58494365cd09dd0ca3e1287
MD5 f2e8e909a88ce0355fb5e29159ae53dd
BLAKE2b-256 dec697c6df1566a53af35a60107a8abe1b75dfb97b1c28e42c4a0abd408319e5

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