# specialist

> A library that helps you write tiny, fast and beautiful CLI apps that can automatically check for updates.

Latest version **2.0.0** (published 2026-02-08) · MIT license · 0 weekly downloads

## Install

```sh
npm install specialist
pnpm add specialist
yarn add specialist
bun add specialist
```

## Health

**Score 55/100 (C)** — status: stable.

Positive: has types; esm support; no vulnerabilities.

Warnings: low downloads.

## Facts

| | |
|---|---|
| Version | 2.0.0 |
| Published | 2026-02-08 |
| First published | 2021-05-11 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Dependencies | 4 |
| Unpacked size | 4.6 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 28 |
| Maintainers | fabiospampinato |
| Keywords | simple, command-line, cli, app, application, tiny, fast, bundled, beautiful, easy |

## Links

- npm: https://www.npmjs.com/package/specialist
- Repository: https://github.com/fabiospampinato/specialist
- Homepage: https://github.com/fabiospampinato/specialist#readme
- Issues: https://github.com/fabiospampinato/specialist/issues
- npm.io page: https://npm.io/package/specialist

## Dependencies (4)

- [tiny-bin](https://npm.io/package/tiny-bin.md) ^2.0.0
- [tiny-colors](https://npm.io/package/tiny-colors.md) ^2.2.2
- [tiny-updater](https://npm.io/package/tiny-updater.md) ^3.7.0
- [tiny-parse-argv](https://npm.io/package/tiny-parse-argv.md) ^2.8.2

## Alternatives

- [@salesforce/cli](https://npm.io/package/@salesforce/cli.md) — 389.7K weekly downloads
- [@mintlify/cli](https://npm.io/package/@mintlify/cli.md) — 208.9K weekly downloads
- [@grafana/e2e-selectors](https://npm.io/package/@grafana/e2e-selectors.md) — 128.7K weekly downloads
- [mintlify](https://npm.io/package/mintlify.md) — 112.0K weekly downloads
- [@intlayer/cli](https://npm.io/package/@intlayer/cli.md) — 22.8K weekly downloads

## Recent versions

- 2.0.0 (latest) — 2026-02-08
- 1.4.5 — 2025-02-02
- 1.4.4 — 2025-02-02
- 1.4.3 — 2024-09-12
- 1.4.2 — 2024-09-01
- 1.4.1 — 2024-08-31
- 1.4.0 — 2023-12-13
- 1.3.0 — 2023-08-03
- 1.2.0 — 2023-02-20
- 1.1.0 — 2023-02-15
- 1.0.2 — 2023-02-12
- 1.0.1 — 2023-02-10
- 1.0.0 — 2023-02-10
- 0.7.1 — 2023-02-07
- 0.7.0 — 2023-02-07
- … 10 more at https://npm.io/package/specialist/versions

## README

# Specialist

A library that helps you write tiny, fast and beautiful CLI apps that can automatically check for updates.

## Install

```sh
npm install specialist
```

## Usage

The following APIs are provided:

```ts
// It provides the "bin" function from "tiny-bin"
// https://github.com/fabiospampinato/tiny-bin
import {bin} from 'specialist';

// It provides the basic color functions from "tiny-colors"
// https://github.com/fabiospampinato/tiny-colors
import {color} from 'specialist';
// color.{black, red, green, yellow, blue, magenta, cyan, white, gray}
// color.{bgBlack, bgRed, bgGreen, bgYellow, bgBlue, bgMagenta, bgCyan, bgWhite}
// color.{dim, bold, hidden, italic, underline, strikethrough, reset}

// It provides a basic "exit" function, for exiting with visual consistency
// Exiting with this function will look like how "tiny-bin" exits
import {exit} from 'specialist';

// It provides the "parseArgv" function from "tiny-parse-argv"
// https://github.com/fabiospampinato/tiny-parse-argv
import {parseArgv} from 'specialist';

// It provides the "updater" function from "tiny-updater"
// https://github.com/fabiospampinato/tiny-updater
import {updater} from 'specialist';
```

## Example

The following is an example basic CLI app build with Specialist:

```ts
#!/usr/bin/env node

import {bin, color} from 'specialist';

bin ( 'my-cli', 'My example cli' )
  .command ( 'time', 'A command that tells you the time' )
  .action ( () => {
    console.log ( color.cyan ( new Date ().toString () ) );
  })
  .run ();
```

## License

MIT © Fabio Spampinato

---
_Source: https://npm.io/package/specialist · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
