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

https://github.com/hipstersmoothie/markdown-it-vanilla-loader

Load markdown files to html in webpack. Uses markdown-it and assumes nothing about your configuration.
https://github.com/hipstersmoothie/markdown-it-vanilla-loader

Last synced: 25 days ago
JSON representation

Load markdown files to html in webpack. Uses markdown-it and assumes nothing about your configuration.

Awesome Lists containing this project

README

        

[![CircleCI branch](https://img.shields.io/circleci/project/github/hipstersmoothie/markdown-it-vanilla-loader/master.svg?style=for-the-badge)](https://circleci.com/gh/hipstersmoothie/markdown-it-vanilla-loader)
[![Codecov branch](https://img.shields.io/codecov/c/github/hipstersmoothie/markdown-it-vanilla-loader/master.svg?style=for-the-badge)](https://codecov.io/gh/hipstersmoothie/markdown-it-vanilla-loader/)
[![npm](https://img.shields.io/npm/v/markdown-it-vanilla-loader.svg?style=for-the-badge)](https://www.npmjs.com/package/markdown-it-vanilla-loader) [![npm](https://img.shields.io/npm/dt/markdown-it-vanilla-loader.svg?style=for-the-badge)](https://www.npmjs.com/package/markdown-it-vanilla-loader)





Markdown-It-Vanilla-Loader


Uses markdown-it to render markdown to HTML and assumes nothing about your configuration.


## Install

```bash
yarn add -D markdown-it-vanilla-loader
```

## Usage

**Input**

```markdown
# Your Markdown File

With some content.
```

**webpack.config.js**

```javascript
module.exports = {
module: {
rules: [
{
test: /\.md$/,
use: [
'html-loader',
{
loader: 'markdown-it-vanilla-loader',
options: {
highlight: (code, language) => {
return language && highlightjs.getLanguage(language)
? highlightjs.highlight(language, code).value
: code;
}
}
}
]
}
]
}
};
```

**Output**

```html

Your Markdown File

With some content.


```

## Options

This loader accepts any options that are allowed on `markdown-it`, those options can be found [here](https://github.com/markdown-it/markdown-it#init-with-presets-and-options).

| Name | Type | Default | Description |
| :------------------------: | :-------: | :-----: | :--------------------------------- |
| **[`plugins`](#fallback)** | `{array}` | `[]` | Plugins to load into `markdown-it` |

### `plugins`

Plugins can be defined in 2 ways.

1. Just a string with no options.
2. An array where the first item is the plugin name and the second item is an object with options for that plugin.

**webpack.config.js**

```javascript
{
loader: 'markdown-it-vanilla-loader',
options: {
plugins: [
// Just a string
'markdown-it-anchor',
// Array with options
[
'markdown-it-anchor',
{
permalink: true,
permalinkSymbol: '',
level: 2
}
]
]
}
}
```

### Example

```
cd example
yarn
yarn build
```