Example CLI Flowscripter
winget install --id=Flowscripter.example-cli -e
Simple example CLI using dynamic-cli-framework
Example CLI is a command-line interface tool designed to demonstrate dynamic command-line functionality using the dynamic-cli-framework. It provides an easy-to-use platform for developers to experiment with and implement dynamic CLI applications.
Key Features:
- Cross-platform support (macOS, Linux, Windows)
- Lightweight design with Bun runtime integration
- Installable via Winget on Windows
- Comprehensive functional testing framework
Audience & Benefit: Ideal for developers and CLI enthusiasts seeking a straightforward way to explore and test dynamic command-line applications. It simplifies the process of experimenting with CLI frameworks and tools.
Example CLI is perfect for anyone looking to understand or implement dynamic CLI functionality in their projects.
README
example-cli
> Simple example CLI using > dynamic-cli-framework.
Binary Executable Usage
NOTE: The binaries are 10's of megabytes in size as the entire Bun runtime is included.
MacOS
Via Homebrew:
brew install flowscripter/tap/example-cli
Linux
In a terminal:
curl -fsSL https://raw.githubusercontent.com/flowscripter/example-cli/main/script/install.sh | sh
Windows
Via Winget:
winget install Flowscripter.example-cli
Manual Install
You can download and extract the binary zip files from the releases page.
Functional Tests
Refer to functional_tests/README.md
Development
Install dependencies:
bun install
Test:
bun test
Run:
bun run index.ts
> During development this can be used to validate command definitions:
>
> DYNAMIC_CLI_FRAMEWORK_VALIDATE_ALL=1 bun run index.ts
> During development this can be used to enable framework logging:
>
> DYNAMIC_CLI_FRAMEWORK_DEBUG=1 bun run index.ts
Compile binary:
bun build index.ts --compile --outfile /tmp/example-cli
NOTE: The following tasks use Deno as it excels at these and Bun does not currently provide such functionality:
Format:
deno fmt
Lint:
deno lint index.ts src/ tests/
Documentation
Refer to the dynamic-cli-framework documentation.
License
MIT © Flowscripter