rehype
next-mdx-remote
Our great sponsors
rehype | next-mdx-remote | |
---|---|---|
15 | 20 | |
1,323 | 1,941 | |
2.6% | 3.1% | |
0.0 | 3.3 | |
23 days ago | 16 days ago | |
JavaScript | TypeScript | |
MIT License | Mozilla Public License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
rehype
- Example of Powerful Markdown Editor combining Svelte-Exmarkdown and Skeleton
-
How to integrate your blog with dev.to API Next.js 13
That's all to render the post as HTML, there are lots of things you can do to customize the results, you can check the remark plugins and rehype plugins to pass as props to and you can also take a look at some other bloggers if you're looking for different styles for example Lee Robinson's or if you liked mine.
-
Serving Docusaurus images with Cloudinary
Now we have our Cloudinary account set up, we can use it with Docusaurus. To do so, we need to create a rehype plugin. This is a plugin for the rehype HTML processor. It's a plugin that will transform the HTML image syntax into a Cloudinary URL.
-
Contentlayer with next/image
The next idea was to use normal markdown images and to place the images in the public folder. This eliminates the need for static import and treats our image like a remote image. But in order to make this work, we have to tell next/image the dimensions of the image. If we would use a static import for the image, the import magic would provide the dimensions for us. To pass the width and height to the image component we use a rehype plugin called rehype-img-size.
-
Creating a blog with Astro and MDX
Astro makes it easy to add Remark or Rehype plugins to your markdown. You can extend add a markdown property to the Astro config file, an add a function/plugin to the remarkPlugins property (the extendDefaultPlugins property is added to make sure the default plugins aren't overwritten by this config change):
-
Converting and customizing Markdown files to HTML with Unified, remark & rehype
rehype: "rehype is a tool that transforms HTML with plugins. These plugins can inspect and change the HTML. You can use rehype on the server, the client, CLIs, deno, etc."
-
Render Markdown from a string in Svelte (mdsvex / SvelteKit)
This means that you can transform your HTML with tools like rehype or remark. You can find out more about the available options here.
-
Building React Components from headless CMS markdown
The HTML syntax tree is transformed through rehype, and rendered to React components.
-
Brick by brick: why Docusaurus is a powerful documentation framework
MDX also supports Remark and Rehype plugins, allowing you to augment the syntax and replace content on the fly. What can we do with this? Docusaurus demonstrates this well by creating its own plugins for admonitions, table of contents generation, and creating heading links.
-
Is Astro ready for your blog?
SSG-based blogs almost always have you add content mainly through use of Markdown, so how a platform handles that is particularly important. Astro incorporates both the well-known Remark Markdown parser and rehype tool, and uses plugins from both. Some Remark plugins aren’t compatible with the latest version but, often, a rehype plugin can make up for that. Be sure to check for your specific use case. Also, notably, Astro allows you to put components in the Markdown (I’ll get to components further down). For example, if you’ve already imported an ImageBox.astro component as ImageBox, you could have Markdown like this:
next-mdx-remote
-
Give your blog superpowers with MDX in a Next.js
next-mdx-remote
-
Making a blog with Directus, MDX, and Next.js On-Demand ISR
We are going to be using next-mdx-remote for this tutorial. Let us install it -
-
Next.js + MDX
next-mdx-remote, a community package maintained by Hashicorp that allows you to use MDX from outside your project.
-
Powerful Code Blocks with Code Hike and MDX
Do note that Code Hike also works with Next MDX Remote and MDX Bundler however, we are going to look at a simple example with the official MDX plugin for Next.js.
-
How to setup a dev blog using Next.js and next-mdx-remote.
Refer the next-mdx-remote github to learn more the use of plugins and how awesome things could be done using MDX.
-
Beginners Guide to Using mdx-bundler With Your Next.js Blog
MDX is an extension on Markdown which, lets you import custom React components into your blog posts. To use MDX with Next.js you need to use a separate package. There are a few choices with MDX-remote being a popular one, but it has some drawbacks. For that reason, I chose to use mdx-bundler.
-
Adding an in-browser code preview to your React Application with Sandpack
Sandpack is a live coding environment that runs on the browser. It is made by the team behind CodeSandbox/. The main objective here is to provide interactive examples to play around with, to users. I see it being widely used in things like blog posts and documentation (in fact the, work in progress, new React Docs is using Sandpack). In this article, we are going to look at how to add Sandpack to a React Application and then we will look at integrating it with Next MDX Remote in a NextJS Application.
-
Quick comparison of MDX integration strategies with Next.js
The next-mdx-remote package by Hashicorp was created to deal with problems that arose from their next-mdx-enhanced package.
-
How I Made My Multilingual Blog
I don't have any experiences with the other libraries (e.g. next-mdx-enhanced, next-mdx-remote) so I won't judge the pros and cons of one compared to the others.
-
How to ACTUALLY create a static site with Next.js
And before you tell me I'm using Next wrong, I already know I am. MDX complicates things. I've already investigated next-mdx-remote, but there are pitfalls which I would have to re-architect things to avoid and I didn't feel like doing that.
What are some alternatives?
remark - remark is a popular tool that transforms markdown with plugins. These plugins can inspect and change your markup. You can use remark on the server, the client, CLIs, deno, etc.
mdx - Markdown for the component era
mdx-bundler - 🦤 Give me MDX/TSX strings and I'll give you back a component you can render. Supports imports!
prism-react-renderer - 🖌️ Renders highlighted Prism output to React (+ theming & vendored Prism)
rehype-prism - rehype plugin to highlight code blocks in HTML with Prism (via refractor)
tailwind-nextjs-starter-blog - This is a Next.js, Tailwind CSS blogging starter template. Comes out of the box configured with the latest technologies to make technical writing a breeze. Easily configurable and customizable. Perfect as a replacement to existing Jekyll and Hugo individual blogs.
next-mdx-enhanced - A Next.js plugin that enables MDX pages, layouts, and front matter
next-localization - Lightweight Internationalization (i18n) library for Next.js 10+
rehype-toc - A rehype plugin that adds a table of contents (TOC) to the page
remark-directive - remark plugin to support directives
next-pwa - Zero config PWA plugin for Next.js, with workbox 🧰