https://github.com/trag1c/paperbush
🌿 Paperbush - a super concise argument parsing tool for Python
https://github.com/trag1c/paperbush
argparse argument-parsing cli parsing python
Last synced: 4 months ago
JSON representation
🌿 Paperbush - a super concise argument parsing tool for Python
- Host: GitHub
- URL: https://github.com/trag1c/paperbush
- Owner: trag1c
- License: mit
- Created: 2022-12-27T03:26:36.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-08-13T15:05:26.000Z (almost 2 years ago)
- Last Synced: 2025-02-10T21:48:44.846Z (4 months ago)
- Topics: argparse, argument-parsing, cli, parsing, python
- Language: Python
- Homepage: https://trag1c.github.io/paperbush
- Size: 728 KB
- Stars: 12
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Paperbush 🌿
Paperbush is a super concise argument parsing tool that simplifies the process of creating command-line argument parsers in Python. With Paperbush, you can define your parser in just a single line of code using a custom built-in language, which is then translated directly into the built-in `argparse` module equivalent. This means that in most cases, moving to Paperbush is just a matter of changing the parser definition, as `Paperbush.parse_args()` returns an `argparse.Namespace` object.
## Installation
Paperbush is available on PyPI and can be installed with `pip`, or any other Python package manager:
```sh
$ pip install paperbush
```
(Some systems may require you to use `pip3`, `python -m pip`, or `py -m pip`)## [Examples](https://trag1c.github.io/paperbush/examples/)
## Features
- short name inferrence
- mutually exclusive groups
- choices and the count action
- default values
- required arguments
- type conversion
- help messages## Known Limitations
Currently Paperbush has no support for:
- aliases
- subparsers## License
Paperbush is licensed under the MIT License.