11 个可用于构建网站的开源静态网站生成器

您在寻找开源静态站点生成器吗?别再看了,这篇文章已经涵盖了你。

网站可以被认为是静态的或动态的。像 WordPress 这样的 CMS(内容管理系统)通常为动态网站提供支持。内容管理系统从数据库中获取信息,然后在每次用户请求时填写网页上的内容。

静态站点是从 Web 服务器向客户端提供服务的网站,没有任何更改。这是一种构建网站的简单方法,因为网站中的每个页面都是一个单独的 HTML 文件。在网络的早期,这就是他们构建网站的方式。

因此,如果您访问静态网站上的主页,您正在查看实际的主页文件。在本文中,我们将展示 11 个可用于构建网站的开源和免费静态站点生成器。

1.杰基尔

Jekyll是静态站点生成器的先驱。它于 2008 年由 Github 的联合创始人 Tom Preston-Werner 首次发布。它是使用 Ruby 编写的,通过从 JSON、YAML、CSV 和 TSV 文件加载内容来生成静态站点

Jekyll 正在为 GitHub Pages 提供支持,它使用户能够根据他们的 GitHub 存储库帐户托管他们的网站,而无需增加成本。

Github 链接: https : //github.com/jekyll/jekyll

2. 雨果

Hugo是一个使用 Go 编程语言构建的开源静态站点生成器。让 Hugo 脱颖而出的是它构建网站的速度。它也很灵活,并提供强大的主题系统,可让您创建主题。

它可在多个操作系统平台上使用,支持漂亮的 URL,并具有各种内容类型选项。

Github: https : //github.com/gohugoio/hugo

3.Publii

Publii是一款免费、开源的基于桌面的应用程序。它在您的机器上本地运行,而不是站点的服务器,并且不需要互联网访问。因此,您可以离线在您的网站上工作。

当您上网时,只需将更改上传到您的服务器,它就会保存更改。有多种上传选项,包括标准 HTTP/HTTPS 服务器、Amazon S3、GitHub Pages、Netlify、SFTP 和 Google Cloud。

使用 Publii,您可以创建个人博客、投资组合或公司网站。它还支持您通过即时切换从同一个应用程序构建、更改和运行无限的站点。您不需要记住任何数据库或其他凭据。

Github: https : //github.com/GetPublii/Publii

4. Nuxt

Nuxt是一个基于 Vue 的直观 Web 框架,可让您构建静态站点。它是开源的,当您构建静态站点时,您可以在 Azure 静态 Web 应用程序上免费托管它。 Nuxt 支持服务器端渲染,与传统的 Vue单页应用程序 (SPA)相比,这带来了巨大的 SEO 提升、更好的 UX 和更多机会

Github: https : //nuxtjs.org

5. 网格

Gridsome是另一个基于 Vue.js 并由 GraphQL 提供支持的开源 SSG。它使用 Jamstack 框架,使其能够构建默认速度快、性能更好、安全性更高、扩展成本低以及开发人员体验更好的网站。

Gridsome 支持 PWA,它在没有互联网连接时离线工作,利用您上次与应用程序交互期间缓存的数据。

Github: https : //github.com/gridsome/gridsome

6. Hexo

Hexo是一个由 Node.js 提供支持的快速、简单且功能强大的博客框架。它支持 GitHub Flavored Markdown 和大多数 Octopress 插件的所有功能。它还具有强大的 API,可提供无限的可扩展性。

有各种插件可以支持大多数模板引擎,例如 EJS、Pug、Nunjucks 等等。它还可以轻松地与 NPM (节点包管理器)包集成,例如 Babel、PostCSS 和 Less/Sass。

Github: https : //github.com/hexojs/hexo

7. 多库龙

Docusaurus是由 Facebook 开发的开源静态站点生成器。它是使用 React 构建的,并由 Markdown 提供支持。您可以使用 Markdown 编写文档和博客文章,Docusaurus 将发布一组静态 HTML 文件。

因此,您可以节省时间并专注于您的项目文档。借助 MDX,您甚至可以将 JSX 组件嵌入到 Markdown 中。 Docusaurus 还带有预配置的本地化功能,可以将您的文档翻译成 70 多种语言。

Github: https : //github.com/facebook/docusaurus

8. VuePress

VuePress是由 Evan You 构建的极简 Vue 驱动的 SSG; Vue.js的创造者。它的开发是为了支持 Vue 项目的技术文档需求。它由 Vue、Vue Router 和 Webpack 提供支持。 Vuepress 是开源的,易于使用,并且需要最少的降价设置。

Github: https : //github.com/vuejs/vuepress

9. 十一

Eleventy (11ty) 是一个更简单的开源 SSG。它被创建为 Jekyll 的 JavaScript 替代品。它具有零配置,这意味着 Eleventy 可以在没有配置文件或命令行的情况下运行。因此,它降低了您的第一个项目构建的进入门槛。您将比以往更快地启动和运行您的网站。

Eleventy 使用独立的模板引擎。如果您决定稍后使用其他内容,以这种方式组织您的内容将使迁移更容易。它还具有多种模板语言。您可以选择一个或在一个项目中一起使用它们。

Github: https : //github.com/11ty/eleventy/

10.鹈鹕

Pelican是一个用 Python 编写的开源 SSG。它的功能包括以 reStructuredText 或 Markdown 标记编写内容、易于托管静态输出以及通过 Jinja 模板自定义主题。它也是多语言的,具有 atom/RSS 提要、代码语法突出显示、从 WordPress 和其他服务导入、模块化插件系统、相应的插件存储库以及许多其他功能。

Github: https : //github.com/getpelican/pelican

11.莱克托

Lektor是另一个用 Python 构建的开源 SSG。它是 100% 基于文件的,这意味着所有源数据的结构都很好,可以在版本控制系统或Dropbox 等云存储中进行跟踪。它还有一个平面文件数据库,其中所有源数据都存储在一个平面文件树数据库中,可以自由查询。该数据的布局是完全可配置的。

Lektor 有一个可定制的管理员,您可以在其中编辑您的页面,而无需接触原始资源。它还具有依赖关系跟踪功能,其中构建过程智能地跟踪页面依赖关系,以便仅重新构建已更改的页面。它的其他功能包括插件系统、图像工具、多语言、从任何主机部署、在 Windows、Linux 和 OSX 上运行。

Github: https : //github.com/lektor/lektor

建立你的静态网站

静态网站提供了广泛的优势。这些网站灵活、性能更好、服务器端依赖更少、可靠性更高、安全性更高,以及出色的版本控制和测试。如果您要构建静态网站,请务必查看上述免费的开源静态网站生成器。