Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/eshepelyuk/pykli
Interactive ksqlDB command line client with autocompletion and syntax highlighting written in Python
https://github.com/eshepelyuk/pykli
cli confluent console-application kafka ksql ksqldb ksqldb-cli tui
Last synced: about 2 months ago
JSON representation
Interactive ksqlDB command line client with autocompletion and syntax highlighting written in Python
- Host: GitHub
- URL: https://github.com/eshepelyuk/pykli
- Owner: eshepelyuk
- License: mit
- Archived: true
- Created: 2023-05-26T19:46:32.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2023-08-08T19:12:03.000Z (10 months ago)
- Last Synced: 2024-01-27T10:35:14.636Z (5 months ago)
- Topics: cli, confluent, console-application, kafka, ksql, ksqldb, ksqldb-cli, tui
- Language: Python
- Homepage:
- Size: 104 KB
- Stars: 7
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Lists
- cli-apps - pykli - Interactive ksqlDB command line client with autocompletion and syntax highlighting written in Python. (<a name="data-management-tabular"></a>Data management - Tabular data)
- awesome-cli-apps - pykli - Interactive ksqlDB command line client with autocompletion and syntax highlighting written in Python. (<a name="data-management-tabular"></a>Data management - Tabular data)
README
# pyKLI
[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
[![Poetry](https://img.shields.io/endpoint?url=https://python-poetry.org/badge/v0.json)](https://python-poetry.org/)
![PyPI - Version](https://img.shields.io/pypi/v/pykli?color=greenlight)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/pykli)
![PyPI - License](https://img.shields.io/pypi/l/pykli)Interactive command line client for [ksqlDB](https://ksqldb.io/)
with autocompletion and syntax highlighting written in Python.Inspired by and also borrowed some code from the great family of CLI tools https://www.dbcli.com/.
The project is in early stage, but usable for supported functionality.
All your PRs and suggestions are welcome.
## Installation
* Latest released version
```sh
pip install pykli
```* From latest source code
```sh
pip install -U git+https://github.com/eshepelyuk/pykli@main
```
## Features* Command history and search, history based autosuggestion.
* KSQL command keywords autocompletion.
* Run multiple commands from local file.
* Partial KSQL syntax highlighting based on `Pygments` SQL.
* Pretty tabular output with highlighting based on `Pygments` themes.
* Supported KSQL commands.* `SHOW`, `LIST`
* `DESCRIBE`, without `EXTENDED`
* `DROP`
* `CREATE`
* `RUN SCRIPT`
* `TERMINATE`
* `SELECT` for Pull queries
* `INSERT`
* `DEFINE`, `UNDEFINE`## TODO (prioritized)
* Push queries, i.e. with `EMIT CHANGES` for `SELECT` statement
* `PAUSE` / `RESUME`
* KSQL syntax support with Pygments
* `DESCRIBE ... EXTENDED`
* `EXPLAIN`
* Auto detect when needed output via pager
* Metadata autocompletion
* table ans stream names
* column names and functions in queries
* topic and connector names
* session variables
* attributes of `WITH` blocks
* In-place KSQL editing with default editor
* Internal help
* More configuration options and configuration file
* pygments theme
* server profiles
* etc etc