https://github.com/arshad-shah/clif
Tiny, zero-dependency CLI framework with beautiful output and a composable API.
https://github.com/arshad-shah/clif
cli colors framework nodejs prompts spinner terminal typescript zero-dependency
Last synced: 17 days ago
JSON representation
Tiny, zero-dependency CLI framework with beautiful output and a composable API.
- Host: GitHub
- URL: https://github.com/arshad-shah/clif
- Owner: arshad-shah
- License: mit
- Created: 2026-05-17T13:56:29.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2026-05-30T07:18:11.000Z (18 days ago)
- Last Synced: 2026-05-30T09:10:27.930Z (18 days ago)
- Topics: cli, colors, framework, nodejs, prompts, spinner, terminal, typescript, zero-dependency
- Language: TypeScript
- Homepage: https://clif.arshadshah.com
- Size: 456 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
# clif
[](https://github.com/arshad-shah/clif/actions/workflows/ci.yml)
[](https://github.com/arshad-shah/clif/actions/workflows/release.yml)
[](https://www.npmjs.com/package/@arshad-shah/clif)
[](https://www.npmjs.com/package/@arshad-shah/clif)
[](https://bundlejs.com/?q=@arshad-shah/clif)
[](./LICENSE)
[](https://pnpm.io)
[](./packages/clif/src)
> Tiny, zero-dependency CLI framework with beautiful output and a composable API.
This repository is a pnpm monorepo containing the `clif` framework and its
documentation site.
## Packages
| Package | Description |
| ---------------------------------------- | -------------------------------------------- |
| [`packages/clif`](./packages/clif) | The framework itself. Published to npm. |
| [`packages/docs`](./packages/docs) | Starlight-based documentation site. |
| [`packages/example`](./packages/example) | End-to-end demo CLI (`kit`) for development. |
## Quick start
```bash
pnpm install # install all workspace deps
pnpm build # build clif
pnpm test # run all clif tests
pnpm example demo all # exercise every renderer end-to-end
pnpm docs:dev # serve the docs site locally
```
## Development
Node and pnpm versions are pinned via both `volta` and the `packageManager`
field in `package.json`. If you use [Volta](https://volta.sh), `node` and
`pnpm` switch automatically when you `cd` into the repo.
```bash
pnpm lint # Biome (JS/TS/JSON)
pnpm format # Biome + Prettier (everything else)
pnpm typecheck # tsc --noEmit across the workspace
pnpm changeset # author a changeset for your PR
```
## License
MIT — see [LICENSE](./LICENSE).