Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sndrs/ok
🙇 Obliging task runner
https://github.com/sndrs/ok
npm npm-scripts nvm package-scripts proof-of-concept task-runner yarn
Last synced: 18 days ago
JSON representation
🙇 Obliging task runner
- Host: GitHub
- URL: https://github.com/sndrs/ok
- Owner: sndrs
- Created: 2020-03-18T11:40:18.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2023-02-03T05:23:32.000Z (almost 2 years ago)
- Last Synced: 2024-12-16T18:13:40.291Z (about 1 month ago)
- Topics: npm, npm-scripts, nvm, package-scripts, proof-of-concept, task-runner, yarn
- Language: TypeScript
- Homepage:
- Size: 27.5 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ok
> 🙇♂️ An obliging task runner
Run `npm-scripts` in the correct environment without further installation or config.
## Install
```bash
$ yarn global add @sndrs/ok
```or
```bash
$ npm install -g @sndrs/ok
```Then use it to run your `npm-scripts`:
```bash
$ ok test # etc...
```### Changes the host env as little as possible
`ok` uses [nvexeca](https://github.com/ehmicky/nvexeca) behind the scenes. This means:
- it does not need to make changes to `$PATH`
- it does not affect existing Node versions
- it does not affect `NVM`, `fnm` etc### Follows project conventions
- uses correct Node version, observing [`.nvmrc`, `engines` and more](https://github.com/ehmicky/preferred-node-version/blob/main/README.md)
- uses the correct package manager for the project ([`yarn`, `npm` or `pnpm`](https://github.com/zkochan/packages/tree/master/preferred-pm))
- observes `engines.npm` if present (unlike npm)
- always run tasks with up-to-date dependencies### No further dependencies
- uses its own copy of `yarn` if it cannot find one
- no `nvm`/`n`/`fnm` etc needed### Experience
- All task output is shown – no magic
- All available scripts in current context are discoverable by running without args (`> ok`)
- Notifies you if you're using out-of-date version## See also
- [`nvexeca`](https://github.com/ehmicky/nvexeca): `nvm` + `execa`