pre-rehype-react v0.0.12
pre-rehype-react
A rehype plugin to enable render of any React components in markdown.
Installation
npm install pre-rehype-react
# or
yarn add pre-rehype-reactDocumentation
The plugin enables you to reference React components within markdown files using square bracket tags like in the example below.
Any properties declared after the component name are passed in as props and any content within the opening and closing tags are passed in as children.
Currently the plugin only accepts property values of type string, number and boolean, but this can be expanded to cover all JSON serializable values.
[callout accent=true marginBottom=5 type="error"]
#### This is a heading
This is a paragraph.
[/callout]The plugin must be placed between remark-rehype and rehype-react in the remark pipeline like
in the example below.
Any components you want to reference within markdown must be declared in the pre-rehype-react components array as well
as in the rehype-react components object.
import preRehypeReact from "pre-rehype-react";
import rehypeReact from "rehype-react";
import remark from "remark";
import remarkRehype from "remark-rehype";
import Callout from "./components/Callout";
export default markdown => {
const { result } = remark()
.use(remarkRehype)
.use(preRehypeReact, {
components: ["callout"],
})
.use(rehypeReact, {
callout: props => <Callout {...props}>,
})
.process(markdown);
return result;
}Feedback
Please report issues/make feature requests using the issues tracker and I will action them as soon as possible.
Changelog
Check out the features, fixes and more that go into each major, minor and patch version.
License
pre-rehype-react is MIT Licensed.