博客系统 活跃维护

dillinger

joemccann/dillinger

最后一款 Markdown 编辑器。

8293
Stars 标星
1161
Forks 分支
151
Watchers 关注
155
Open Issues
TypeScript
主要语言
MIT
开源协议
16.7 MB
仓库大小
4 个月前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:joemccann/dillinger
git clone https://github.com/joemccann/dillinger.git
git clone git@github.com:joemccann/dillinger.git
README.md master

机器翻译正文由机器翻译自项目原始文档(英文),排版经程序统一处理,可能存在偏差,请以原项目仓库为准。

Dillinger

你最终需要的 Markdown 编辑器。

一个现代的、云原生的 Markdown 编辑器,基于 Next.js 构建——专为速度、专注和无缝同步而设计。

入门 · 功能 · 集成 · 部署


✨ 为什么选择 Dillinger

大多数 Markdown 编辑器都是:

  • 臃肿的
  • 仅限离线
  • 或者缺乏严肃的开发者体验

Dillinger 解决了这些问题。

它结合了:

  • ⚡ VS Code 级别的编辑
  • ☁️ 原生云存储
  • 🧘 无干扰用户体验
  • 🔄 实时渲染

⚡ 快速开始

npm install
npm run dev

Open → http://localhost:3000


🧱 要求

  • Node.js 18
  • npm / yarn / pnpm / bun

🚀 功能

编辑器体验

  • Monaco 编辑器(VS Code 核心)
  • Markdown 语法高亮
  • 图片粘贴支持

实时工作流程

  • 实时预览
  • 滚动同步
  • 即时反馈循环

专注模式

  • Zen Mode (Cmd/Ctrl + Shift + Z)
  • 全屏,无干扰写作

文件处理

  • Drag & drop .md, .txt, .markdown
  • 自动保存(本地持久化)

导出

  • Markdown
  • HTML
  • PDF

云集成

  • GitHub
  • 谷歌云端硬盘
  • Dropbox
  • OneDrive
  • Bitbucket

🔐 环境设置

创建:

.env.local

模板

# Google Drive
GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=
GOOGLE_REDIRECT_URI=http://localhost:3000/api/google-drive/callback

# OneDrive
ONEDRIVE_CLIENT_ID=
ONEDRIVE_CLIENT_SECRET=
ONEDRIVE_REDIRECT_URI=http://localhost:3000/api/onedrive/callback

# Bitbucket
BITBUCKET_CLIENT_ID=
BITBUCKET_CLIENT_SECRET=
BITBUCKET_REDIRECT_URI=http://localhost:3000/api/bitbucket/callback

# GitHub
GITHUB_CLIENT_ID=
GITHUB_CLIENT_SECRET=
GITHUB_REDIRECT_URI=http://localhost:3000/api/github/callback

# Dropbox
DROPBOX_CLIENT_ID=
DROPBOX_CLIENT_SECRET=
DROPBOX_REDIRECT_URI=http://localhost:3000/api/dropbox/callback

☁️ 云端集成

每个提供商都需要 OAuth 配置。

谷歌云端硬盘

  • 启用云端硬盘 API
  • 创建 OAuth 凭证
  • 重定向:
/api/google-drive/callback

OneDrive

  • Azure 应用注册
  • 权限:

    • 文件.读写
    • 用户.读取

Bitbucket

  • OAuth 消费者
  • 仓库读写访问权限

GitHub

  • OAuth 应用
  • 回调:
/api/github/callback

Dropbox

  • 受控应用
  • 启用:

    • files.metadata.read
    • files.content.write

🚢 部署

更新所有 OAuth 回调:

https://yourdomain.com/api/{provider}/callback

然后:

npm run build
npm start

🏗 技术栈

层 技术
框架 Next.js 14
编辑器 Monaco
样式 Tailwind CSS
状态 Zustand
图标 Lucide

📦 脚本

npm run dev              # Start dev server
npm run build            # Production build
npm start                # Start production server
npm run lint             # ESLint
npm run test             # Unit + E2E tests
npm run test:unit        # Vitest unit/integration tests
npm run test:watch       # Vitest watch mode
npm run test:e2e         # Playwright E2E tests
npm run test:e2e:headed  # E2E in visible browser
npm run verify           # Lint + typecheck + all tests

🧪 测试

294 个单元/集成测试(Vitest) 39 个端到端测试(Playwright),代码覆盖率为 98%.

npm run test:unit                # Run all unit tests
npx vitest run --coverage        # With coverage report
npm run test:e2e:headed          # E2E in visible browser

测试按类型组织在 tests/ 中:lib/、store/、hooks/、components/、routes/ 和 e2e/。


🧭 哲学

Dillinger 是围绕一个简单的理念构建的:

写作工具应该消失。

没有摩擦。没有杂乱。只有流畅。


🤝 贡献

欢迎提交 PR。重大更改请先开一个问题。


📄 许可证

麻省理工学院

本站来源与版权声明
  • 本文标题:dillinger - 最后一款 Markdown 编辑器
  • 本文链接:https://www.cn121.com/blog/joemccann-dillinger.html
  • 原项目:joemccann/dillinger 版权归原作者 joemccann 及贡献者所有
  • 收录信息:本站于 2026-10-25 收录本项目,本页所列协议与仓库指标均为收录当时的状态;该日期之后原项目的版本更新与协议变更,本页不作同步。
  • 开源协议:收录时本项目采用 MIT(查看 LICENSE 原文),本站译文为其衍生内容;使用、修改、分发请以该仓库 LICENSE 原文为准。
  • 站点出处:本文首发于 OneTwoOne,收录自 GitHub 开源项目 joemccann/dillinger。
  • 翻译说明:本页正文为人工智能生成内容——由机器翻译对原项目 README 初译、经程序校验排版,可能存在错漏,请以原项目文档为准。
  • 引用声明:商业转载、第三方聚合或 AI 检索训练引用时,请务必保留以上来源出处、本文永久链接,以及原项目的版权声明与许可信息。
  • 下架通道:若原项目此后变更或收紧了许可协议、或作者/权利人认为本站的收录方式(译文、排版适配、简介翻译等)超出其授权范围,请通过 xyd3302001@163.com 发送下架通知,并附上项目地址与本页链接。本站核实后将第一时间删除本页内容,或改为不复制原文的目录性收录;署名更正等其他要求可一并提出。