Parses Enki Curriculum JSON into an AST


5529.2.34 months ago3 years agoMinified + gzip package size for @enkidevs/curriculum-parser-json in KB


JSON -> AST for Enki Curriculum

This parser processes an Enki JSON and produces the Enki Curriculum AST.

const {
  contentTypes: { INSIGHT }
} = require("@enkidevs/curriculum-helpers");
const {
  getParser: getMarkdownParser
} = require("@enkidevs/curriculum-parser-markdown");
const {
  getCompiler: getJSONCompiler
} = require("@enkidevs/curriculum-compiler-json");
const {
  getParser: getJSONParser
} = require("@enkidevs/curriculum-parser-json");

const jsonCompiler = getJSONCompiler(INSIGHT);
const mdParser = getMarkdownParser(INSIGHT);
const jsonParser = getJSONParser(INSIGHT);

// get ast from a string
const ast = mdParser.parseSync(sampleInsight)

// get json from ast
const json = jsonCompiler.compileSync(ast)

// get ast back from json (using this package)
const ast2 = jsonParser.parseSync(json)

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.