Nuclear Pumpkin Mayhem

    postapl

    1.3.0 • Public • Published

    PostAPL

    PostAPL is a tool for transforming Alexa Presentation Language (APL) documents with JS plugins. These plugins can add, remove, and modify APL nodes and bring consistency to all the APL docs in a project.

    PostAPL takes an APL file (JSON with or without comments) and provides an API to analyze and modify its nodes (by transforming them into an Abstract Syntax Tree). This API can then be used by plugins to do a lot of useful things, e.g., remove properties with empty or null values, report on mainTemplate structure.

    For PostAPL commercial support (consulting, PostAPL plugins), contact Mark Tucker.

    Plugins

    PostAPL is just getting started and we are open to plugin suggestions. You can find all of the plugins in the plugins list. Below is a list of our favorite plugins — the best demonstrations of what can be built on top of PostAPL.

    If you have any new ideas, PostAPL plugin development is really easy.

    General

    • postapl-remove-empty finds properties whose values are null, empty string, empty array, or empty object and removes them.

    Reporters

    Usage

    You can start using PostAPL in just two steps:

    1. Find and add PostAPL extensions for your build tool.
    2. Select plugins and add them to your PostAPL process.

    JS API

    For other environments, you can use the JS API:

    const { postapl } = require('postapl');
    const removeEmpty = require('postapl-removeempty');
    const fs = require('fs');
    
    fs.readFile('src/screen.json', (err, apl) => {
      postapl([removeEmpty])
        .process(apl, { from: 'src/screen.json', to: 'dest/screen.json' })
        .then(result => {
          fs.writeFile(result.opts.to, result.apl, () => true)
        })
    });

    Read the [PostAPL API documentation] for more details about the JS API.

    Options

    Most PostAPL runners accept two parameters:

    • An array of plugins.
    • An object of options.

    Common options:

    • from: the input file name.
    • to: the output file name.

    Install

    npm i postapl

    DownloadsWeekly Downloads

    2

    Version

    1.3.0

    License

    MIT

    Unpacked Size

    21.4 kB

    Total Files

    12

    Last publish

    Collaborators

    • rmtuckerphx