Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/hiro08gh/rich-editor-to-markdown-parser

microCMS Rich Editor response convert to markdown.
https://github.com/hiro08gh/rich-editor-to-markdown-parser

markdown markdown-parser microcms parser

Last synced: 2 months ago
JSON representation

microCMS Rich Editor response convert to markdown.

Awesome Lists containing this project

README

        

# rich-editor-to-markdown-parser

Convert microCMS Rich Editor response to Markdown.

スクリーンショット 0005-12-09 14 26 25

## Installation

```
npm install rich-editor-to-markdown-parser
```

## Usage

```js
import { parser } from 'rich-editor-to-markdown-parser';
// If you are importing multiple items with the same name parser, please assign an alias to them.
import { parser as RichEditorToMarkddownParser } from 'rich-editor-to-markdown-parser';

const html = '

Hello World!

This html string is convertinto markdown.

'

parser(html); // # Hello World!\n\nThis **html** string is ~~convert~~ into [markdown.](https://exampe.com)
```

※ Unsupported HTML tags are parsed as strings. When converting markdown to HTML, consider sanitizing it using [DOMPurify](https://github.com/cure53/DOMPurify) or [sanitize-html](https://github.com/apostrophecms/sanitize-html).
## HTML list

| HTML | Description |
| --- | --- |
| Heading | |
| Bold | |
| Italic | |
| Underline | Parsed with HTML tags |
| Strike | |
| Code | |
| TextAlign | Not supported |
| Horizontal Rule | |
| Blockquote | |
| CodeBlock | |
| Table | |
| ListBullet | |
| ListOrdered | |
| Link | |
| Image | |
| Embed | Not supported |
| Custom class | Parsed with HTML tags |

## Options

| Option | Description | Defualt |
| --- | --- | --- |
| image.size | Contain width and height image size. ex) ?w=1200&h=630 | true |
| image.query | Add image query in markdown. ex) ?format=webp | '' |
| markStyle.strong | ** or __ | ** |
| markStyle.em | * or _ | * |
| markStyle.li | - or * or + | - |
| markStyle.hr | --- or *** or ___ | --- |
| markStyle.pre | ``` or ~~~ | ``` |

## Development

First, install npm dependencies.

```bash
npm install
```

Running unit test. This library uses vitest.

```bash
npm run test
```

Build modules.

```bash
npm run build
```

## License

MIT License.© [hiro08gh](https://github.com/hiro08gh)