simple-markdown-to-html
v1.0.0
Published
A lightweight TypeScript library for converting Markdown to HTML with support for CommonMark and GitHub Flavored Markdown features
Maintainers
Readme
Simple Markdown to HTML
一个轻量级的 TypeScript 库,用于将 Markdown 转换为 HTML,支持 CommonMark 和 GitHub Flavored Markdown 特性。
特性
- ✅ CommonMark 基础语法:标题、段落、粗体、斜体、链接、图片、代码块、引用、列表等
- ✅ GitHub Flavored Markdown:表格、任务列表、删除线、自动链接等
- ✅ HTML 标签保留:原文中的 HTML 标签会被原样保留
- ✅ TypeScript 支持:完整的类型定义
- ✅ 轻量级:无外部依赖,体积小巧
- ✅ 高性能:基于正则表达式的快速解析
安装
npm install simple-markdown-to-html或使用 yarn:
yarn add simple-markdown-to-html或使用 pnpm:
pnpm add simple-markdown-to-html使用方法
ES6 模块
import { md2html } from 'simple-markdown-to-html';
const markdown = `
# 标题
这是一个 **粗体** 和 *斜体* 的示例。
- 列表项 1
- 列表项 2
- 嵌套列表
| 表头1 | 表头2 |
|-------|-------|
| 单元格1 | 单元格2 |
`;
const html = md2html(markdown);
console.log(html);CommonJS
const { md2html } = require('simple-markdown-to-html');
const html = md2html('# Hello World\n\nThis is **bold** text.');
console.log(html);默认导出
import md2html from 'simple-markdown-to-html';
const html = md2html('# Hello World');支持的 Markdown 语法
基础语法
- 标题:
# H1到###### H6 - 段落:普通文本段落
- 粗体:
**粗体**或__粗体__ - 斜体:
*斜体*或_斜体_ - 粗斜体:
***粗斜体***或___粗斜体___ - 行内代码:
`代码` - 代码块:
```javascript console.log('Hello World'); - 链接:
[链接文本](URL) - 图片:
 - 引用:
> 引用文本 - 无序列表:
- 项目或* 项目或+ 项目 - 有序列表:
1. 项目 - 水平分割线:
---或***或___
GitHub Flavored Markdown
- 删除线:
~~删除的文本~~ - 任务列表:
- [ ] 未完成任务 - [x] 已完成任务 - 表格:
| 表头1 | 表头2 | |-------|-------| | 单元格1 | 单元格2 | - 自动链接:
<https://example.com>或<[email protected]>
API
md2html(markdown: string): string
将 Markdown 字符串转换为 HTML 字符串。
参数:
markdown(string): 要转换的 Markdown 文本
返回值:
- (string): 转换后的 HTML 文本
示例:
const html = md2html('# Hello\n\nThis is **bold**.');
// 输出: '<h1>Hello</h1>\n<p>This is <strong>bold</strong>.</p>'注意事项
- HTML 标签保留:原文中的 HTML 标签会被原样保留,不会被转义
- 代码安全:代码块和行内代码中的 HTML 字符会被正确转义
- 嵌套支持:支持列表嵌套和其他复杂结构
- 性能优化:使用占位符机制保护代码块,避免误处理
开发
# 克隆仓库
git clone https://github.com/username/simple-markdown-to-html.git
cd simple-markdown-to-html
# 安装依赖
pnpm install
# 开发模式
pnpm run dev
# 构建
pnpm run build许可证
MIT License
贡献
欢迎提交 Issue 和 Pull Request!
更新日志
1.0.0
- 初始版本
- 支持 CommonMark 基础语法
- 支持 GitHub Flavored Markdown
- TypeScript 支持
