noddity-render-static
v3.0.1
Published
Generate static HTML from Noddity posts
Readme
Render static HTML from a Noddity post.
Usage
const render = require('noddity-render-static')
const Butler = require('noddity-butler')
const Linkifier = require('noddity-linkifier')
const butler = new Butler(noddityUrlString | noddityRetrieval, levelUpDb, [options])
const linkifier = new Linkifier('#/myposts/')
const options = {
butler: butler,
linkifier: linkifier,
data: {
config: {
configProperty: 'configValue'
},
arbitraryValue: 'lol'
}
}
const html = await render('template.md', 'excellent-missive.md', options)
console.log(html)
htmlPromise = render(template, post, options)
template: either a Noddity post object, or file name of a post, to be used as the template into which the current post will be injected. Should have{{>current}}in it somewhere - this is where the current/main post will show up.post: either a Noddity post object, or the file name of a post to be loadedoptions: all the other argumentsbutler: a Noddity Butlerlinkifier: a Noddity Linkifierdata: Any properties on thedataobject will be made available to the templates.convertToHtml: don't turn the markdown into html
Values accessible in Ractive expressions
postList: an array of post objects that have dates, ordered by date descending. Metadata is accessible on the object iself without having to use themetadatapropertyposts: an object whose keys are the post file names, and whose value is the post object. Right now the keys all have periods.stripped from them due to an issue with RactiveremoveDots: a function that takes a string as input and returns a version with dots.removedcurrent: the file name of the currently displayed post (the one specified in the url)
