Interact cli¶
Interactive command line tool.
Github repo: https://github.com/caizhengxin/interact-cli
Documentation: https://interact-cli.readthedocs.io
Free software: BSD
Features¶
Interact input
Supports multiple data types
Support input check
Support type¶
boolean
string
int
float
list
choice
Installation¶
To install interact-cli, run this command in your terminal:
$ pip3 install interact-cli
or:
$ git clone https://github.com/caizhengxin/interact-cli.git
$ cd interact-cli
$ pip3 install -e .
Demo¶
Your Project name [interact-cli]:
Project description [Interactive command line tool.]:
Your name [jankincai]:
Your email [jankincai12@gmail.com]:
Project version [0.1.0]:
Use code hosting platform [n]: y
Select code hosting:
1 - github
2 - gitee
3 - gitlab
Choose from [1]:
Your code hosting username [jankincai]:
See demo
Usage¶
See interact.json
interact:
from interact import interact
if __name__ == "__main__":
obj = interact("interact.json")
print(obj)
print(obj.version)
interacts:
from interact import interacts
config = {
"project_name": {
"type": "string",
"default": "interact-cli",
"description": "Your Project name"
},
"description": {
"type": "string",
"default": "Interactive command line tool.",
"description": "Project description"
},
"author": {
"type": "string",
"default": "jankincai",
"description": "Your name"
},
"email": {
"type": "string",
"default": "jankincai12@gmail.com",
"description": "Your email"
},
"version": {
"type": "string",
"default": "0.1.0",
"description": "Project version"
},
"use_code_hosting": {
"type": "boolean",
"default": True,
"description": "Use code hosting platform"
},
"code_hosting": {
"type": "choice",
"default": 1,
"choice": [
"github",
"gitee",
"gitlab"
],
"description": "Code hosting",
"when": "use_code_hosting == true"
},
"code_hosting_username": {
"type": "string",
"default": "jankincai",
"description": "Your code hosting username",
"when": "use_code_hosting == true"
}
}
if __name__ == "__main__":
obj = interacts(config)
print(obj)
print(obj.version)
load:
from interact import load
if __name__ == "__main__":
print(load("interact.json"))
loads:
from interact import loads
if __name__ == "__main__":
print(loads(config))
Credits¶
This package was created with Cookiecutter and the caizhengxin/cookiecutter-package project template.