qo

1.4.0 • Public • Published

qo

A task runner for insect people.

install

npm install qo

how to use

Write a file qo.js:

task('hi', function () {
  console.log('hi!');
});

Then

# qo hi 
hi!

named arguments

task('hi', function (args, options) {
  console.log("hi " + options.name);
});

Then

# qo hi --name jack 
hi jack

lists of arguments

task('hi', function (args) {
  console.log("hi " + args.join(''));
});

Then

# qo hi jack jill jesse 
hi jack, jill, jesse

promises

If you return a promise, and it's rejected, then qo will print the error exit with 1.

var fs = require('fs-promise');
 
task('print', function (args) {
  return fs.readFile(args[0], 'utf-8').then(function (contents) {
    console.log(contents);
  });
});

Then

# qo print some-file.txt 
Error: ENOENT, open 'some-file.txt'
    at Error (native)

task descriptions

task('hi', {desc: 'says hi'}, function () {
  console.log('hi');
});

Then

# qo 
tasks:
 
    hi, says hi

You can also put descriptive arguments into the task name:

task('hi <name>', {desc: 'says hi to <name>'}, function (args) {
  console.log('hi ' + args[0]);
});

Then

# qo 
tasks:
 
    hi <name>, says hi to <name>

pogoscript

you can write a qo.pogo file too. Pogoscript happens to be very useful for writing heavily asynchronous code, and great for little scripts that get things done.

Dependencies (2)

Dev Dependencies (6)

Package Sidebar

Install

npm i qo

Weekly Downloads

38

Version

1.4.0

License

BSD-2-Clause

Last publish

Collaborators

  • refractalize