Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/lukemorton/markedly

Turn a directory of Markdown into JSON for your blog
https://github.com/lukemorton/markedly

Last synced: 3 months ago
JSON representation

Turn a directory of Markdown into JSON for your blog

Lists

README

        

# Markedly

Turn a directory of Markdown files into JSON for your blog.

## Usage

To use markedly, first add it to your project:

```
npm install --save markedly
```

Now you can use the `markedly` command:

```
node_modules/.bin/markedly
```

By default markedly compiles a directory of markdown, by default it looks in `posts/`, into a single `dist/posts/index.json` with file paths as keys. Below is an example of the JSON produced:

``` json
{
"2017-01-17-lightweight-docker-images-for-go": {
"title": "

Lightweight docker images for Go

\n",
"plainTitle": "Lightweight docker images for Go",
"intro": "

On building lightweight Docker images for Go applications.

\n",
"publishedAt": "17th January 2017",
"publishedAtISO": "2017-01-17T00:00:00.000+00:00",
"content": "

On building lightweight Docker images for Go applications.

\n

In my last article I wrote about deploying Go apps to Now. I arrived at a solution that compiled a Go app inside a Docker container. This means that the Docker container needed to be built with all the dependencies necessary to compile Go code into something useful.

",
"slug": "2017-01-17-lightweight-docker-images-for-go"
}
}
```

You can also create lists of posts in your `package.json`:

``` json
{
"markedly": {
"lists": {
"latestArticles": {
"sort": "publishedAt",
"reverse": true,
"limit": 10
}
}
}
}
```

When you next run `node_modules/.bin/markedly` it will now produce both `dist/posts/index.json`, along with `dist/posts/latestArticles.json`.

If you wanted a list of all articles sorted by day, you can skip the limit line.

``` json
{
"markedly": {
"lists": {
"articlesArchive": {
"sort": "publishedAt",
"reverse": true
}
}
}
}
```

This would produce a file called `dist/posts/articlesArchive.json`.

## License

MIT