semvec/pypi-packages huggingface dataset:
incenp.pebble 1.1.1
Command-line Passman client

Pebble - Command-line Passman client
====================================

Pebble is a command-line client for the
[Passman](https://github.com/nextcloud/passman) password manager.

It supports read and write access to Passman vaults: it can list,
show, create, modify or delete entries in a vault. It cannot,
however, create or delete the vaults themselves.


Configuration
-------------
Pebble requires a configuration file describing the vault(s) to use. The
configuration file uses the [INI
syntax](https://docs.python.org/3/library/configparser.html#supported-ini-file-structure)
and is expected to be at `$XDG_CONFIG_HOME/pebble/config` by default;
another location may be specified using the `-c` option.

A vault is described in the configuration file by a section like in the
following example:

```
[default]
host: host.example.com
user: alice
password: mypassword
vault: MyVault
```

The file may contain several sections, one for each different vault.
Use the `-s` option to specify the name of the section to use (and thus,
which vault to connect to). By default, a section named `default` will
be used.

Inside a vault section, the `password` field may be omitted, in which
case the password will be asked interactively. Note: This is the
Nextcloud password, *not* the vault’s password! The vault password is
*always* asked interactively.


Use
---
With at least one vault configured, Pebble may then be used through the
`pbl` command and its subcommands. Current available subcommands are:

* `list` to list credentials in the vault;
* `show` to display a credential’s details;
* `new` to add a new credential;
* `edit` to modify a credential;
* `delete` to remove a credential from the vault;
* `export` to dump all credentials to a file;
* `conf` to create or edit the configuration file;
* `refresh` to forcefully refresh the local cache;
* `clear` to empty the local cache.

In addition, calling `pbl` without any subcommand will start an
interactive shell in which subcommands can be invoked successively
without quitting the program.

Calling `pbl` with the `-h` option will display the general help;
calling a given subcommand with the `-h` option will display the help
for that subcommand.

The program will interactively for the vault passphrase when it is
needed to decrypt or encrypt a credential.


Copying
-------
Pebble is distributed under the terms of the GNU General Public License,
version 3 or higher. The full license is included in the [COPYING
file](COPYING) of the source distribution.


Homepage and repository
-----------------------

The project is located at <https://incenp.org/dvlpt/pebble.html> with
the manual at <https://incenp.org/dvlpt/pebble/index.html>. The source
code is available in a Git repository at
<https://git.incenp.org/damien/pebble>.
fastapi-fastcli 0.1.8
FastAPI CLI
Requires Python: <4.0,>=3.8

# Fastapi CLI
在使用FastAPI前，我个人使用Flask居多，比较喜欢Flask的CLI，使用起来比较方便，这个项目就是解决FastAPI没有CLI的问题

使用它自动加载项目中已有的Typer实例

#### 使用前
假设我们的CLI代码在下面的路径**app/cli/__init__.py**
```python
import typer

app = typer.Typer()

@app.command()
def version():
    return "1.0.0"
```
为了方便执行，我们需要在项目根目录新增一个入口文件如**cli.py**并添加下面的内容
```python
from app.cli import app

if __name__ == __main__:
    app()
```
最后执行
```shell
python cli.py --help
```
#### 使用后
使用fastcli由于app.cli:app在默认路径下，因此会自动加载，我们只需要运行下面的命令即可
```shell
fastcli --help
```
## 安装使用
#### 安装
```shell
pip install fastapi-fastcli

# 安装TAB自动补全
fastcli --install-completion
```
#### 查看路由列表
```shell
fastcli routes
```
![fastcli run](src/img/fastcli_run.png)
#### 启动FastAPI应用
```shell
fastcli run
```
![fastcli routes](src/img/fastcli_routes.png)


在运行时所在的目录 查找下列路径
```txt
- app.commands:app
- app.cli:app
- cli:app
- main:cli
- manage:cli
- app:cli
```
你也通过环境变量 **FASTAPI_APP**指定
比如
```
export FASTAPI_APP=app:app
```

功能
- 查看路由
- 启动FastAPI应用（uvicron）