test | ||
ts | ||
.gitignore | ||
.gitlab-ci.yml | ||
npmextra.json | ||
package-lock.json | ||
package.json | ||
README.md | ||
tslint.json |
smartfm
frontmatter done right
Availabililty
Status for master
What is frontMatter?
say you have the following markdown file:
---
title: A Really Awesome Article
date: 23-10-2020
type: feature
---
# An Awesome Title
The world is cool. And here is why
- reason 1
- reason 2
The top part that is enclosed by ---
denotes frontmatter, usually written in yaml notation.
Frontmatter is not exclusive to markdown.
It can be used as prefix in any type of file when preprocessed with smartfm.
Usage
We recommend TypeScript for best in class Intellisense.
import * as smartfm from * smartfm
let markdownfile = `---
testKey: testValue
testKey2: testValue2
---
# some markdown`
// easy methods
let parsedData = smartfm.parse(markdownfile)
// parsedData will be object
/*
{
data: {
testKey: testValue,
testKey2: testValue2
},
content: '# some markdown',
orig: '---\ntestKey: testValue\ntestKey2: testValue2\n---\n# some markdown'
}
*/
let newFmString = smartfm.stringify('My awesome string', {testKey1: testValue1})
// newFmString will be '---\testKey1: testValue1\n---\nMyawesomeString'
# class Smartfm
let mySmartfm = new smartfm.Smartfm({
fmType: 'yaml' // can be yaml or json atm
})