@adonisjs/ace v13.0.0
Ace
Node.js framework for creating command line applications. Used by AdonisJs
Table of contents
Usage
Install the package from npm registry as follows:
npm i @adonisjs/ace
# yarn
yarn add @adonisjs/ace
And then use it as follows:
import {
Kernel,
BaseCommand,
arg,
flags
} from '@adonisjs/ace'
class Make extends BaseCommand {
@arg()
public resource: string
@arg()
public name: string
@flags.boolean()
public overwrite: boolean
public static commandName = 'make'
public static description = 'Make a new resource'
// called when the command is executed
async handle () {
console.log(this.name)
console.log(this.resource)
console.log(this.overwrite)
}
}
const kernel = new Kernel()
kernel.register([Make])
kernel.handle(process.argv.splice(2))
Displaying help
The module comes with handful of helpers to display help for a single command or all commands.
We keep the event of displaying help decoupled from the internals of ace
, giving you more freedom on how and when to display the help.
import {
Kernel,
BaseCommand,
printHelpFor,
printHelp
} from '@adonisjs/ace'
const kernel = new Kernel()
kernel.flag('help', (value, options, command) => {
if (command) {
printHelpFor(command)
} else {
printHelp(kernel.commands)
}
process.exit(0)
})
kernel.handle(process.argv.splice(2))
Decorators
The module comes with ES6 decorators to define arguments and flags for a given command.
arg
Define an argument. To make the argument optional, you can set the required
property to false
arg({ required: false })
You can also define the argument description as follows:
arg({ description: 'The resource type to create' })
flags.boolean
Define a flag that accepts a boolean
value.
flags.string
Define a flag that accepts a string
value.
flags.array
Define a flag that accepts an array of values.
You can also define description for a flag, similar to the arg. Also, a flag can define aliases and the default values.
class Make extends BaseCommand {
flags.string({
alias: 'r',
description: 'The resource name',
default: 'controller',
})
resource: string
}
MIT License, see the included MIT file.
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
5 months ago
5 months ago
7 months ago
8 months ago
8 months ago
8 months ago
7 months ago
7 months ago
10 months ago
9 months ago
10 months ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago