We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
mdx-bundler is pretty opinionated and i would like to be able to use a simpler setup closer to the official MDX on demand guide.
mdx-bundler
MDX on demand
it would be cool if something like the following could work with contentlayer:
contentlayer
import { compile } from '@mdx-js/mdx' import withToc from '@stefanprobst/rehype-extract-toc' import type { RawDocumentData } from 'contentlayer/source-files' import { defineDocumentType, makeSource } from 'contentlayer/source-files' import withSlug from 'rehype-slug' import withFrontmatter from 'remark-frontmatter' import withGfm from 'remark-gfm' import { VFile } from 'vfile' import { matter } from 'vfile-matter' import { getTranslations } from '@/app/i18n' const Post = defineDocumentType(() => { return { name: 'Post', description: 'Post', filePathPattern: `posts/**/*.mdx`, contentType: 'mdx', fields: { title: { description: 'Title', type: 'string', required: true }, locale: { description: 'Locale', type: 'enum', options: ['en', 'de'], required: true }, }, } }) export default makeSource({ contentDirPath: 'content', documentTypes: [Post], async mdx(raw: string, sourceFilePath?: string) { const input = new VFile({ value: raw, path: sourceFilePath }) matter(input) const { locale } = input.data['matter'] const t = await getTranslations(locale) const vfile = await compile(input, { remarkPlugins: [withFrontmatter, withGfm], remarkRehypeOptions: { footnoteBackLabel: t('footnote-back-label'), footnoteLabel: t('footnote-label'), }, rehypePlugins: [withSlug, withToc], }) return { code: String(vfile), data: vfile.data } }, })
The text was updated successfully, but these errors were encountered:
i think this could look something like this: main...stefanprobst:feat/mdx-md-processing
Sorry, something went wrong.
@mdx-js/esbuild
No branches or pull requests
mdx-bundler
is pretty opinionated and i would like to be able to use a simpler setup closer to the officialMDX on demand
guide.it would be cool if something like the following could work with
contentlayer
:The text was updated successfully, but these errors were encountered: