code: function buildDOM (options) {
    const opts = options || {}
  
    const meta = opts.meta // gets passed through to all entityTransforms (mainly useful for custom entityTransforms - should never be used in libraries)
    const defaultTransform = opts.defaultTransform || standardDefaultTransform
    const transforms = opts.entityTransforms || entityTransforms()
    const includeCommonMetaTags = opts.includeCommonMetaTags !== false
    const transformMap = prepareTransforms(transforms)
  
    const commonMetaTags = [
      dom.head(dom.create('meta').attr('name', 'viewport').attr('content', 'width=device-width, initial-scale=1'))
    ]
  
    // renders an selection by looking at its type and selecting the transform from the list
    function transformer (selection) {
      const type = quantum.isSelection(selection) ? selection.type() : undefined
      const entityTransform = transformMap[type] || defaultTransform
      return entityTransform(selection, transformer, meta) // bootstrap to itself to  make the transformer accessible to children
    }
  
    // the file transform function that turns parsed content into html content
    return (file) => {
      return Promise.resolve(quantum.select(file.content).transform(transformer))
        .then((elements) => {
          const flattenedElements = flatten(elements)
          const completeElements = includeCommonMetaTags ? flattenedElements.concat(commonMetaTags) : flattenedElements
          return file.clone({
            content: new HTMLPage(completeElements)
          })
        })
    }
  }
docs: /*
  Returns the transform function that converts parsed quantum source to virtual dom.