使用 Material for MkDocs 构建个人博客

举报
kaliarch 发表于 2024/08/06 22:55:12 2024/08/06
【摘要】 一 背景Material for MkDocs 是一个功能强大且美观的主题,非常适合用来构建在线博客。它提供了许多开箱即用的功能,可以让你轻松创建专业的博客网站。二 特性这只是 Markdown ... — 用 Markdown 编写您的技术文档——无需了解 HTML、JavaScript 或 CSS。 MkDocs 的材料将完成繁重的工作并创建一个美观且实用的网站。但还有更多——与 Pyt...

一 背景

Material for MkDocs 是一个功能强大且美观的主题,非常适合用来构建在线博客。它提供了许多开箱即用的功能,可以让你轻松创建专业的博客网站。

二 特性

  • 这只是 Markdown ... — 用 Markdown 编写您的技术文档——无需了解 HTML、JavaScript 或 CSS。 MkDocs 的材料将完成繁重的工作并创建一个美观且实用的网站。

  • 但还有更多——与 Python Markdown Extensions 原生集成,添加标注、选项卡式内容容器、数学公式、评论标记、任务列表以及 10k 多个图标和表情符号。

  • 响应式设计——从头开始构建,适用于各种设备——从手机到宽屏。底层的流体布局将始终完美地适应可用的屏幕空间。

  • 静态,但可搜索——几乎神奇的是,您的技术文档网站将可以轻松搜索。 MkDocs 的材料带有内置搜索 - 无需服务器。

  • 许多配置选项——更改调色板、字体系列、语言、图标、网站图标和徽标。添加源存储库链接、指向您的社交资料的链接和 Google Analytics - 所有这些都只需几行配置。

  • 真正的国际化——感谢许多贡献者,Material for MkDocs 包括 40 多种语言的翻译,并提供完整的原生 RTL(从右到左)支持。

  • 可访问性——MkDocs 的材料提供可扩展的键盘导航和语义标记,包括角色属性和地标。此外,布局尊重用户的默认字体大小。

  • 现代架构——MkDocs 底层代码库的 Material 构建在 TypeScript、RxJS 和 SCSS 之上,为主题扩展和定制带来了极好的可能性。

MkDocs 的素材遵循的是赞助商/软件发布策略,这意味着新功能首先作为内部人员的一部分发布给赞助商。请继续阅读以了解赞助商的成就,如何成为赞助商以获得内部人士的认可,以及这对你有什么好处!

三 安装

3.1 使用docker

docker pull squidfunk/mkdocs-material

mkdocs 可执行文件作为入口点提供,serve 是默认命令。如果您不熟悉 Docker,请不要担心,我们将在以下部分中介绍您。 以下插件与 Docker 映像捆绑在一起:

3.2 创建站点

3.2.1 创建项目

# 创建项目目录
$ mkdir -p project && cd project
$ docker run --rm -it -v ${PWD}:/docs squidfunk/mkdocs-material new .
$ tree
.
├─ docs/
│  └─ index.md
└─ mkdocs.yml


3.2.2 配置站点

最小化配置,在mkdocs.yml文件中添加以下内容。

theme:
  name: material

更多配置参考:squidfunk.github.io/mkdocs-mate…

也可以查看插件:squidfunk.github.io/mkdocs-mate…

3.2.3 预览站点

MkDocs 包含一个实时预览服务器,因此您可以在编写文档时预览您的更改。服务器将在保存后自动重建站点。从以下开始:

docker run --rm -it -p 8000:8000 -v ${PWD}:/docs squidfunk/mkdocs-material

通过浏览器localhost:8000 进行访问

3.2.4 构建站点

使用build参考可以进行构建,之后可以发布到 GitHub Pages, GitLab Pages站点等。

docker run --rm -it -p 8000:8000 -v ${PWD}:/docs squidfunk/mkdocs-material build

INFO     -  Cleaning site directory
INFO     -  Building documentation to directory: /docs/site
INFO     -  Documentation built in 1.81 seconds

四 发布站点到Github Pages

在 git 存储库中托管项目文档的好处是能够在推送新更改时自动部署它。 MkDocs 使这变得非常简单。

如果您已经在 GitHub 上托管您的代码,那么 GitHub Pages 无疑是发布项目文档的最便捷方式。它是免费的,而且很容易设置。

4.1 使用GitHub Actions

使用 GitHub Actions,您可以自动部署项目文档。在存储库的根目录中,创建一个新的 GitHub Actions 工作流程,例如.github/workflows/ci.yml,复制粘贴以下内容:

mkdir -p .github/workflows/ && cd .github/workflows/
touch ci.yml

# 内容如下
name: ci 
on:
  push:
    branches:
      - master 
      - main
jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - uses: actions/setup-python@v2
        with:
          python-version: 3.x
      - run: pip install mkdocs-material 
      - run: mkdocs gh-deploy --force

  • 自定义域名

五 高级配置

5.1 Google Analytics

登陆Google Analytics

5.2 配置敏感信息secret

六 总结

Material for MkDocs 是构建美观且功能强大的在线博客的绝佳选择。它提供简洁直观的界面,丰富的自定义选项和强大的插件支持,让您可以轻松创建个性化的博客平台。通过简单的配置和 Markdown 语法,即可创建专业级的博客内容,并将其发布到 GitHub Pages 等平台。

参考链接

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。