@holochain/dna-to-openapi

0.2.1 • Public • Published

dna-to-openapi

given holochain dna, generate a swagger / openapi spec file / static swagger-ui html documentation

usage

commandline

$ npm install -g @holochain/dna-to-openapi

$ dna-to-openapi -h

Usage dna-to-openapi [options]

Options:
  -p, --path     specify a path (otherwise ".")
  -s, --spec     generates an open-api spec file ("-" for stdout)
  -d, --doc      generates a static swagger-ui html doc ("-" for stdout)
  -h, --help     Show help                                             [boolean]
  -v, --version  Show version number                                   [boolean]

Examples:
  dna-to-openapi                            lints the given holo app / dna
  dna-to-openapi --path <path>              to specify a path (otherwise ".")
  dna-to-openapi --spec <spec-file.json>    generates an open-api spec
  dna-to-openapi --doc <api-doc.html>       generates static swagger-ui html doc
  dna-to-openapi --spec <spec-file.json>    does both
  --doc <api-doc.html>

as a library

const dna = require('@holochain/dna-to-openapi')

// 1 - lint
const lintResults = dna.lint(dnaJsonObject, schemasObject)

// if there are errors (lintResults.errors), abort here.
// generating a spec file with lint errors may not work
if (lintResults.errors.length > 0) {
  process.exit(1)
}

// 2 - generate openapi spec
const specJson = dna.convert(dnaJsonObject, schemasObject)

// 3 - generate swagger-ui html
const swaggerHtml = dna.genDocs(specJson)

/@holochain/dna-to-openapi/

    Package Sidebar

    Install

    npm i @holochain/dna-to-openapi

    Weekly Downloads

    2

    Version

    0.2.1

    License

    Apache-2.0

    Unpacked Size

    2.14 MB

    Total Files

    20

    Last publish

    Collaborators

    • matthme
    • jost-s
    • guillem.cordoba
    • neonphog
    • connoropolous
    • lucksus
    • zippy314
    • thedavidmeister
    • maackle
    • peeech
    • zo-el
    • brisebom
    • timotree