Wondering what’s next for npm?Check out our public roadmap! »

    asl-validator

    1.9.8 • Public • Published

    asl-validator

    license npm version

    NPM

    A simple Amazon States Language validator based on JSON schemas. It also validates JSON paths syntax in InputPath, OutputPath and ResultPath.

    When writing your state machine (for AWS step functions), you can't locally validate you state machine definition without creating it. asl-validator makes it possible.

    Install

    # Use via the CLI
    npm install -g asl-validator
    # Use in your code
    npm install asl-validator

    CLI

    $ asl-validator --help
    
      Usage: asl-validator [options]
    
      Amazon States Language validator
    
    
      Options:
    
        -v, --version                       output the version number
        --json-definition <jsonDefinition>  JSON definition
        --json-path <jsonPath>              JSON path
        --silent                            silent mode
        -h, --help                          output usage information

    Return status:

    • 0 if state machine definition is valid
    • 1 if state machine definition is invalid
    • 2 if an exception occurs

    In your code

    const aslValidator = require('asl-validator');
    const definition = require('./path/to/my/state/machine/json/definition');
    const { isValid, errors, errorsText } = aslValidator(definition);
    if (isValid) {
      console.log('✓ State machine definition is valid')
    } else {
      // Either go through the errors object
      console.error('✕ State machine definition is invalid:', errors.map(({ message }) => message).join('\n'));
      // Or display the preformatted errors text
      console.error('✕ State machine definition is invalid:', errorsText('\n'));
    }

    Test

    npm run test

    Lint

    npm run lint

    See also

    License

    See LICENSE.

    Install

    npm i asl-validator

    DownloadsWeekly Downloads

    50,672

    Version

    1.9.8

    License

    Apache-2.0

    Unpacked Size

    37.9 kB

    Total Files

    19

    Last publish

    Collaborators

    • avatar
    • avatar