
Product
PHP and Composer Support Is Now in Beta
Socket’s PHP and Composer support is now in Beta for all customers, with PHP reachability analysis generally available.
@create-markdown/mdx
Advanced tools
Convert markdown blocks to MDX with component mappings. Part of the create-markdown monorepo.
# Using pnpm
pnpm add @create-markdown/mdx
# Using npm
npm install @create-markdown/mdx
# Using yarn
yarn add @create-markdown/mdx
# Using pnpm
pnpm add @create-markdown/mdx
import { markdownToMDX } from '@create-markdown/mdx';
const markdown = `# Hello World
This is **bold** and *italic* text.
\`\`\`typescript
const greeting = "Hello!";
\`\`\`
`;
const mdx = markdownToMDX(markdown);
console.log(mdx);
// ---
// title: "Hello World"
// ---
//
// # Hello World
//
// This is **bold** and *italic* text.
//
// ```typescript
// const greeting = "Hello!";
// ```
import { markdownToMDX } from '@create-markdown/mdx';
const mdx = markdownToMDX(markdown, {
components: {
codeBlock: 'CodeBlock',
callout: 'Callout',
image: 'Image',
},
imports: [
"import { CodeBlock } from '@/components/code-block'",
"import { Callout } from '@/components/callout'",
"import Image from 'next/image'",
],
});
import { parse } from '@create-markdown/core';
import { blocksToMDX } from '@create-markdown/mdx';
const blocks = parse('# Hello\n\nWorld');
const mdx = blocksToMDX(blocks, {
frontmatter: {
title: 'My Page',
description: 'A sample page',
},
});
import { convertDirectory, docsPreset } from '@create-markdown/mdx';
// Convert all .md files in a directory to .mdx
const results = await convertDirectory(
'./content',
'./pages',
{
...docsPreset,
overwrite: true,
}
);
console.log(`Converted ${results.length} files`);
markdownToMDX(markdown, options?)Converts a markdown string to MDX.
markdownToMDXWithMeta(markdown, options?)Converts markdown and returns metadata (title, headings for TOC).
blocksToMDX(blocks, options?)Converts block array to MDX string.
blocksToMDXWithMeta(blocks, options?)Converts blocks and returns metadata.
convertFile(inputPath, outputPath, options?)Converts a single markdown file to MDX.
convertDirectory(inputDir, outputDir, options?)Batch converts all markdown files in a directory.
interface MDXSerializeOptions {
// Component name mappings
components?: {
codeBlock?: string; // e.g., 'CodeBlock'
callout?: string; // e.g., 'Callout'
table?: string; // e.g., 'Table'
image?: string; // e.g., 'Image'
heading?: string; // e.g., 'Heading'
link?: string; // e.g., 'Link'
};
// Use JSX syntax for components
useJSX?: boolean;
// Import statements to prepend
imports?: string[];
// Frontmatter metadata
frontmatter?: {
title?: string;
description?: string;
[key: string]: unknown;
};
// Extract title from first H1
extractTitle?: boolean;
}
docsPresetPre-configured options for documentation sites:
import { markdownToMDX, docsPreset } from '@create-markdown/mdx';
const mdx = markdownToMDX(markdown, docsPreset);
minimalPresetMinimal MDX without custom components:
import { markdownToMDX, minimalPreset } from '@create-markdown/mdx';
const mdx = markdownToMDX(markdown, minimalPreset);
MIT
FAQs
Convert markdown blocks to MDX with component mappings
The npm package @create-markdown/mdx receives a total of 1 weekly downloads. As such, @create-markdown/mdx popularity was classified as not popular.
We found that @create-markdown/mdx demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Product
Socket’s PHP and Composer support is now in Beta for all customers, with PHP reachability analysis generally available.

Product
Socket is bringing experimental protection to Firefox, scanning 97,000+ extensions in Mozilla's official directory for malware and risky updates.

Research
/Security News
Three compromised Rust crates pulled in a malicious dependency that downloaded and executed cross-platform malware during Cargo builds.