Kapsis β Build delightful & intuitive command line interfaces with Nim language π
nimble install kapsis
- Typed arguments and validation (
path
,string
,int
,bool
,float
,seconds
and more) - Prompters
input
,dropdown
,secret
,checkbox
,radio
- Commands and Sub commands
- Label separators
- Index Auto alignment
- Doc comments
import commands/cli
commands:
-- "Source-to-Source"
src string(-s), path(`timl`), bool(--pretty):
## Transpile `timl` code to a specific target source
ast path(`timl`), filename(`output`):
## Generate binary AST from a `timl` file
Kapsis autolinks CLI commands to their command handles. For example, a command called src
autolinks to a command handle srcCommand
import kapsis/[app, cli]
proc srcCommand*(v: Values) =
displayInfo("Hello")
proc astCommand*(v: Values) =
discard
-h
, --help
, -v
and --version
are reserved flags.
todo
todo let others add more commands to your kapsis app via shared libraries.
- Fancy Gradientful preloaders
- Fullscreen Session & Keyboard Events
- Auto-generate Bash/Zsh completion scripts
- Pluggable Commands via Shared Libraries
- Built-in database using either
JSON
orSQLite
- π Found a bug? Create a new Issue
- π Wanna help? Fork it!
- π Get β¬20 in cloud credits from Hetzner
- π₯° Donate to The Enthusiast via PayPal address
MIT
license. Made by Humans from OpenPeeps.
Copyright Β© 2024 OpenPeeps & Contributors β All rights reserved.