trip
v2.0.0
Published
The minimalist's task runner.
Readme
trip
The minimalist's task runner.
Install
> yarn global add trip
# or...
> npm install trip -gOr install it locally inside a project if you prefer.
Usage
- Make a
tripfile.jsandexportsome functions from it. - Run the named functions from your CLI using
trip FUNCTION_NAME.
You can use ES2016 syntax and it will just work.
You can run multiple tasks in series like this: > trip task1 task2 task3
Example tripfile.js
A tripfile is a module that exports some functions:
// > trip speak
export function speak() {
console.log('Hello world!');
}
// > trip wow
export async function wow() {
await somePromise();
}
// > trip
export async default function () {
console.log('this is the default task');
}Flags
You can pass boolean flags from the command line, using : as a delimiter.
For example, the command > trip foo:bar:baz will call the foo function with the flags { bar: true, baz: true }.
// run this with `trip speak:leaving:polite` to set enable the flag
export function speak({ leaving }) {
console.log((leaving ? 'Goodbye' : 'Hello') + ' world!');
}ES2016
Your tripfile is automatically compiled with Babel. Trip uses the env and preset and most stage-0 features by default, so you don't need to bring your own Babel config. But if you do have your own config in a .babelrc or package.json, Babel will use that instead.
Async tasks
Trip understands several kinds of async:
- async functions
- functions that return promises
- functions that return streams
- functions that explicitly accept a
donecallback as a second argument (for compatibility with old APIs)
When you run multiple tasks from one command (> trip task1 task2), trip waits for each task to finish before starting the next.
