https://github.com/c4spar/cliffy
A TypeScript-first, runtime-agnostic command-line toolkit for building complex CLIs — featuring a command framework, argument parser, interactive prompts, tables, ANSI utilities, and more.
https://github.com/c4spar/cliffy
ansi-escape argument-parser cli cli-cursor cli-framework cli-table command-line deno prompt prompts typescript
Last synced: 2 days ago
JSON representation
A TypeScript-first, runtime-agnostic command-line toolkit for building complex CLIs — featuring a command framework, argument parser, interactive prompts, tables, ANSI utilities, and more.
- Host: GitHub
- URL: https://github.com/c4spar/cliffy
- Owner: c4spar
- License: mit
- Created: 2020-03-09T22:54:29.000Z (about 6 years ago)
- Default Branch: main
- Last Pushed: 2026-05-05T20:08:19.000Z (27 days ago)
- Last Synced: 2026-05-28T19:39:50.526Z (4 days ago)
- Topics: ansi-escape, argument-parser, cli, cli-cursor, cli-framework, cli-table, command-line, deno, prompt, prompts, typescript
- Language: TypeScript
- Homepage: https://cliffy.io
- Size: 8 MB
- Stars: 1,154
- Watchers: 6
- Forks: 77
- Open Issues: 52
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
- awesome-deno - cliffy - The complete solution for building interactive command-line tools. (Modules / CLI utils)
README

[](https://jsr.io/@cliffy)
[](https://deno.land/x/cliffy)
[](https://github.com/c4spar/deno-cliffy/actions/workflows/test.yml)
[](https://codecov.io/gh/c4spar/deno-cliffy)
[](https://discord.gg/ghFYyP53jb)
**Cliffy** is a TypeScript-first, runtime-agnostic command-line toolkit for
building complex CLIs with [Deno](https://deno.land), [Node](https://nodejs.org)
and [Bun](https://bun.sh).
## Documentation
The [documentation](https://cliffy.io/docs) is available on
[cliffy.io](https://cliffy.io).
## Packages
| Package | Description | Version | Downloads | Runtime |
| -------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------- |
| [ansi](https://cliffy.io/docs/ansi/) | Chainable ansi _escape sequences_. | [](https://jsr.io/@cliffy/ansi) | [](https://jsr.io/@cliffy/ansi) [](https://jsr.io/@cliffy/ansi) | _Deno, Node, Bun_ |
| [command](https://cliffy.io/docs/command/) | Create _complex_ and _type-safe_ commandline tools with build-in _input validation_, _auto generated help_, _shell completions_ and more. | [](https://jsr.io/@cliffy/command) | [](https://jsr.io/@cliffy/command) [](https://jsr.io/@cliffy/command) | _Deno, Node, _Bun__ |
| [flags](https://cliffy.io/docs/flags/) | Parse command line arguments (used by the _command_ module). | [](https://jsr.io/@cliffy/flags) | [](https://jsr.io/@cliffy/flags) [](https://jsr.io/@cliffy/flags) | _Deno, Node, _Bun__ |
| [keycode](https://cliffy.io/docs/keycode/) | Parser ansi key codes. | [](https://jsr.io/@cliffy/keycode) | [](https://jsr.io/@cliffy/keycode) [](https://jsr.io/@cliffy/keycode) | _Deno, Node, _Bun__ |
| [keypress](https://cliffy.io/docs/keypress/) | Listen to keypress events with _Promise_, _AsyncIterator_ and _EventTarget_ APIs. | [](https://jsr.io/@cliffy/keypress) | [](https://jsr.io/@cliffy/keypress) [](https://jsr.io/@cliffy/keypress) | _Deno, Node, _Bun__ |
| [prompt](https://cliffy.io/docs/prompt/) | Create _simple_ and _powerful_ interactive prompts. | [](https://jsr.io/@cliffy/prompt) | [](https://jsr.io/@cliffy/prompt) [](https://jsr.io/@cliffy/prompt) | _Deno, Node, _Bun__ |
| [table](https://cliffy.io/docs/table/) | Create cli tables with border, padding, nested tables, etc... | [](https://jsr.io/@cliffy/table) | [](https://jsr.io/@cliffy/table) [](https://jsr.io/@cliffy/table) | _Deno, Node, _Bun__ |
| [testing](https://cliffy.io/docs/testing/) | Experimental helper functions for testing. | [](https://jsr.io/@cliffy/testing) | [](https://jsr.io/@cliffy/testing) [](https://jsr.io/@cliffy/testing) | _Deno_ |
## Contributing
Any kind of contribution is welcome! Please take a look at the
[contributing guidelines](CONTRIBUTING.md).
## License
[MIT](LICENSE)