简介

VuePress 是由两部分组成: 一个拥有 Vue 能力的主题系统的简单静态网站生成器,一个为专门为技术文档优化的默认主题。它是为了 Vue 的子项目的文档编写需求所创建的。

如何工作

VuePress 实际上是基于 vuevue-routerwebpack 的站点。如果你之前用过 vue,在写作或者开发自定义主题时,你会注意到熟悉的开发体验(甚至可以使用 Vue DevTools 来检查你的自定义主题!)。

在构建的时候,我们创建了一个 ssr 的应用版本,通过真正访问每个路由来渲染对应的 HTML 页面。这些灵感都来自于 Nuxt's 的生成命令行和形如Gatsby等项目。

每个 markdown 文件都通过markdown-it编译到 HTML 里面,同时当作一个 Vue 的组件模板处理。这就意味着允许你直接在 markdown 文件里使用 Vue,当你需要嵌入动态内容的时候体验会很棒。

特性

Todo

VuePress 依然处于开发进度当中。还有几件计划内的事情还没得到支持:

  • 集成 Algolia 的文档搜索
  • 支持博客

欢迎来贡献!

为什么不。。。?

Nuxt

Nuxt 已经能胜任 VuePress 正在做的事情,但是它被设计出来时为了构建应用。VuePress 专注在静态内容站点和提供现成的且为编写技术文档定制的特性。

Docsify / Docute

它们都是运行时驱动,因此对 seo 不友好。如果你不在乎 SEO 和不想要杂乱的安装依赖,它们是很好的选择。他们都是好的项目,也支持 Vue。

Hexo

事实上 Hexo 能很好的服务 Vue 的文档,我们还有可能还有很长的路去把我们的主站从它里面迁移出来。最大的问题是它的主题系统非常静态和基于字符串-我们真的想在布局和互动上利用 Vue。因此,Hexo 的 markdown 渲染机制在配置上不是最灵活的。