Skip to main content

A library for developing command-line applications in Python.

License PyPI Version Python Versions Documentation Downloads

The cmdkit library implements a few common patterns needed by well-formed command-line applications in Python. It only touches a few concepts but it implements them well. The idea is to reduce the boilerplate needed to get a full featured CLI off the ground. Applications developed using cmdkit are easy to implement, easy to maintain, and easy to understand.


Features

  • An Interface class for parsing command-line arguments.

  • An Application class that provides the boilerplate for a good entry-point.

  • Basic Logging via the logalpha package.

  • A Configuration class built on top of a Namespace class that provides automatic depth-first merging of dictionaries from local files, as well as automatic environment variable discovery and type-coercion.


Installation

CmdKit is built on Python 3.7+ and can be installed using Pip.

➜ pip install cmdkit

Getting Started

See the Tutorial for examples.

You can also checkout how cmdkit is being used by other projects.

Project

Description

REFITT

Recommender Engine for Intelligent Transient Tracking

hyper-shell

Hyper-shell is an elegant, cross-platform, high-performance computing utility for processing shell commands over a distributed, asynchronous queue.

delete-cli

A simple, cross-platform, command-line move-to-trash.


Documentation

Documentation for getting started, the API, and common recipes are available at cmdkit.readthedocs.io.


Contributions

Contributions are welcome in the form of suggestions for additional features, pull requests with new features or bug fixes, etc. If you find bugs or have questions, open an Issue here. If and when the project grows, a code of conduct will be provided along side a more comprehensive set of guidelines for contributing; until then, just be nice.

Metadata

Release files for cmdkit 2.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cmdkit 2.0.1
File Size Uploaded
cmdkit-2.0.1.tar.gz 19.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for cmdkit 2.0.1
File Interpreter ABI Platform
cmdkit-2.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 50.2 kB

Release files / cmdkit-2.0.1.tar.gz

Download URL cmdkit-2.0.1.tar.gz
Size 19.2 kB
Tags Source
SHA-256 checksum
How to use checksums
c4b689b0ae9e1014ed712ca9a1f2d919496890a95bdc24e0c5c3c6959127313f
BLAKE2b-256 checksum
How to use checksums
6cae17656ba54ccca9b85c84b875a88b0e41deb4e8f38e6d033aa0e3f3690a80
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.5

Release files / cmdkit-2.0.1-py3-none-any.whl

Download URL cmdkit-2.0.1-py3-none-any.whl
Size 31.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2bc187c07a202936120c820e9895f2120faaebb75a480715ac9665e60ef6995b
BLAKE2b-256 checksum
How to use checksums
8d6f0e5c57a96b75ddf5b7dbf51162602a7dbb9eaa8ca4f48d619195f521c586
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.5

Release history Release notifications | RSS feed

2.7.7

2 release files

2.7.6

2 release files

2.7.5

2 release files

2.7.4

2 release files

2.7.3

2 release files

2.7.2

2 release files

2.7.1

2 release files

2.6.1

2 release files

2.6.0

2 release files

2.5.1

2 release files

2.5.0

2 release files

2.4.0

2 release files

2.3.0

2 release files

2.2.3

2 release files

2.2.2

2 release files

2.2.1

3 release files

2.1.3

2 release files

2.1.2

2 release files

2.1.1

2 release files

2.1.0

2 release files

2.0.2

2 release files

This release

2.0.1 This release

2 release files

2.0.0

2 release files

1.5.5

2 release files

1.5.4

2 release files

1.5.3

2 release files

1.5.2

2 release files

1.4.0

2 release files

1.3.0

2 release files

1.2.2

2 release files

1.2.1

2 release files

1.1.0

1 release file

1.0.1

1 release file

0.0.4

1 release file

0.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page