Dillinger
最后一个 Markdown 编辑器,永远
Dillinger 是一个云支持、移动准备就绪、离线存储兼容、AngularJS 驱动的 HTML5 Markdown 编辑器。
- 在左侧输入一些 Markdown
- 在右侧查看 HTML
- ✨魔法✨
功能
- 导入 HTML 文件,观看它神奇地转换为 Markdown
- 拖放图片(需要链接您的 Dropbox 账户)
- 从 GitHub、Dropbox、Google Drive 和 One Drive 导入并保存文件
- 将 markdown 和 HTML 文件拖放到 Dillinger 中
- 将文档导出为 Markdown、HTML 和 PDF
Markdown 是一种基于人们在电子邮件中自然使用的格式化约定的轻量级标记语言。正如 John Gruber 在 Markdown 网站 上所写。
Markdown的格式化语法的主要设计目标是使其尽可能易于阅读。想法是,一个Markdown格式的文档应该可以像纯文本一样发布,而不需要看起来是使用标签或格式化指令进行标记的。
您在这里看到的文本实际上是用Markdown编写的!为了了解Markdown的语法,请在左侧窗口中输入一些文本,并观察右侧的结果。
技术
Dillinger使用一些开源项目来正常工作
- AngularJS - 增强的HTML用于网络应用程序!
- Ace Editor - 优秀的基于Web的文本编辑器
- markdown-it - 正确实现的Markdown解析器。快速且易于扩展。
- Twitter Bootstrap - 现代网络应用程序的优秀UI模板库
- node.js - 后端的事件驱动I/O
- Express - 快速的node.js网络应用程序框架 @tjholowaychuk
- Gulp - 流式构建系统
- Breakdance - HTML到Markdown转换器
- jQuery - 呃
当然,Dillinger本身也是开源的,在GitHub上有一个公共仓库。
安装
Dillinger运行需要Node.js v10+版本。
安装依赖项和开发依赖项并启动服务器。
cd dillinger
npm i
node app
对于生产环境...
npm install --production
NODE_ENV=production node app
插件
Dillinger目前扩展了以下插件。如何在自己的应用程序中使用它们的说明链接如下。
插件 | README |
---|---|
Dropbox | plugins/dropbox/README.md |
GitHub | plugins/github/README.md |
Google Drive | plugins/googledrive/README.md |
OneDrive | plugins/onedrive/README.md |
Medium | plugins/medium/README.md |
Google Analytics | plugins/googleanalytics/README.md |
开发
想贡献代码?太棒了!
Dillinger使用Gulp + Webpack进行快速开发。修改文件后,可以立即看到更新!
打开您的终端并运行以下命令。
第一个标签页
node app
第二个标签页
gulp watch
(可选)第三个
karma test
为源进行构建
针对生产发布
gulp build --prod
生成预构建的zip存档以分发
gulp build dist --prod
Docker
Dillinger非常容易安装在Docker容器中。
默认情况下,Docker会暴露端口8080,如果需要,请更改Dockerfile中的端口。准备好后,只需使用Dockerfile构建镜像。
cd dillinger
docker build -t <youruser>/dillinger:${package.json.version} .
这将创建dillinger镜像并拉取必要的依赖项。确保将${package.json.version}
替换为Dillinger的实际版本。
完成后,运行Docker镜像,并将端口映射到主机上的任意端口。在这个例子中,我们将主机上的端口8000映射到Docker的端口8080(或Dockerfile中暴露的任何端口)
docker run -d -p 8000:8080 --restart=always --cap-add=SYS_ADMIN --name=dillinger <youruser>/dillinger:${package.json.version}
注意:PDF渲染需要
--cap-add=SYS-ADMIN
。
通过在您的浏览器中导航到服务器地址来验证部署。
127.0.0.1:8000
许可协议
MIT
自由软件,太棒了!