# makeargs
A tool to create a command-line interface for your app using python
## Installation
**Requirements**
- PyYAML==6.0.1 (`pip install`)
- argparse
```bash
git clone github.com/danielmuringe/makeargs
```
## Usage
- Import the package into python file
```python
import makeargs
```
- Define argument tree using YAML format
```python
yaml_tree = """
git:
args:
path:
atype: flag
help: Path of the repo
subparsers:
parsers:
clone:
args:
quiet-clone:
atype: flag
help: Operate quietly. Progress is not reported to the standard error stream.
no-checkout:
help: No checkout of HEAD is performed after the clone is complete
init:
args:
quiet-init:
atype: flag
help: Operate quietly. Progress is not reported to the standard error stream.
"""
```
- Convert YAML to command line argument parser
```python
makeargs.create_arguments(yaml_tree)
```
Raw data
{
"_id": null,
"home_page": "",
"name": "makeargs",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "yaml,boilerplate,command-line,command-line-tool",
"author": "DanielMuringe (Daniel Muringe)",
"author_email": "<danielmuringe@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/a0/8a/792270fa6ce0fc83106ddcd94d298cf671206854aff7f72cee5892da895a/makeargs-0.0.1.tar.gz",
"platform": null,
"description": "\n# makeargs\n\nA tool to create a command-line interface for your app using python\n\n## Installation\n\n**Requirements**\n\n- PyYAML==6.0.1 (`pip install`)\n- argparse\n\n\n```bash\ngit clone github.com/danielmuringe/makeargs\n```\n\n## Usage\n\n- Import the package into python file\n```python\nimport makeargs\n```\n\n- Define argument tree using YAML format\n```python\nyaml_tree = \"\"\"\ngit:\n args:\n path:\n atype: flag\n help: Path of the repo\n subparsers:\n parsers:\n clone:\n args:\n quiet-clone:\n atype: flag\n help: Operate quietly. Progress is not reported to the standard error stream.\n no-checkout:\n help: No checkout of HEAD is performed after the clone is complete\n init:\n args:\n quiet-init:\n atype: flag\n help: Operate quietly. Progress is not reported to the standard error stream.\n\"\"\"\n```\n\n- Convert YAML to command line argument parser\n```python\nmakeargs.create_arguments(yaml_tree)\n```\n",
"bugtrack_url": null,
"license": "",
"summary": "Streaming video data via networks",
"version": "0.0.1",
"project_urls": null,
"split_keywords": [
"yaml",
"boilerplate",
"command-line",
"command-line-tool"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "8cc35350bed42a1697b3f18dfd4f0551f09e7b931fe6db557c63c805df98d011",
"md5": "a6016efd67d39a5171a35942e06ab66a",
"sha256": "8cd432ce559afae27c60e297efc741e434e80f06a3d62f6fd60c44956dbbd165"
},
"downloads": -1,
"filename": "makeargs-0.0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "a6016efd67d39a5171a35942e06ab66a",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 2408,
"upload_time": "2023-11-30T12:38:30",
"upload_time_iso_8601": "2023-11-30T12:38:30.380022Z",
"url": "https://files.pythonhosted.org/packages/8c/c3/5350bed42a1697b3f18dfd4f0551f09e7b931fe6db557c63c805df98d011/makeargs-0.0.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a08a792270fa6ce0fc83106ddcd94d298cf671206854aff7f72cee5892da895a",
"md5": "48de7c398760333e05bd39c6580ca161",
"sha256": "779bc878d6e425c2490513f057c12526cf794017bbf4e6fc463cfcbdf9013a38"
},
"downloads": -1,
"filename": "makeargs-0.0.1.tar.gz",
"has_sig": false,
"md5_digest": "48de7c398760333e05bd39c6580ca161",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 2492,
"upload_time": "2023-11-30T12:38:33",
"upload_time_iso_8601": "2023-11-30T12:38:33.388859Z",
"url": "https://files.pythonhosted.org/packages/a0/8a/792270fa6ce0fc83106ddcd94d298cf671206854aff7f72cee5892da895a/makeargs-0.0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-11-30 12:38:33",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "makeargs"
}