Skip to content
Allows to run scramjet modules from command line facilitating input and output.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin
lib
test
.editorconfig
.eslintignore
.eslintrc
.gitignore
.travis.yml
CHANGELOG.md
LICENSE
README.md
package-lock.json
package.json

README.md

scramjet-cli

Greenkeeper badge

Allows to run scramjet modules from command line facilitating input and output.

Install globally...

npm install -g scramjet-cli

... and use:

$ cat file.log | scr ./my-module > augmented.log

A module that fetches response body from each given url would look like this:

    module.exports = (stream /* assumes StringStream */) => {
        return stream
            .lines()
            .parse(url.parse)
            .map(util.promisify(http.get))
            .catch(e => console.warn("Error in stream", e.stack))
            .map(x => JSON.parse(x));
    };

Full usage:

 Usage: scramjet [-i input] [-o output|-d] [-t StreamClass] [-p plg [-p plg]...] mod1 [mod2] ...
 Options:
 -i --input   input - url to get, file path, empty or '-' for stdin, default: -
 -o --output  output - file path, '@' for print, empty or '-' for stdout, default: -
 -d --display short for -o @, passes the outcome of last module to console.log
 -t --type    stream type, default: StringStream
 -p --plugin  import plugin module (argument for require)
 module       a module that will be passed with the stream and should return a stream
              the module should return an async function that will be called
              the async function will then be awaited and passed to then next

License

MIT - see LICENSE

You can’t perform that action at this time.