惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

L
LINUX DO - 最新话题
C
Cyber Attacks, Cyber Crime and Cyber Security
G
GRAHAM CLULEY
T
Tenable Blog
T
Threatpost
C
CXSECURITY Database RSS Feed - CXSecurity.com
I
Intezer
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
D
Darknet – Hacking Tools, Hacker News & Cyber Security
K
Kaspersky official blog
Security Latest
Security Latest
P
Privacy & Cybersecurity Law Blog
Google Online Security Blog
Google Online Security Blog
SecWiki News
SecWiki News
P
Palo Alto Networks Blog
TaoSecurity Blog
TaoSecurity Blog
Webroot Blog
Webroot Blog
Spread Privacy
Spread Privacy
O
OpenAI News
The Last Watchdog
The Last Watchdog
P
Proofpoint News Feed
C
Check Point Blog
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
人人都是产品经理
人人都是产品经理
S
Security @ Cisco Blogs
Scott Helme
Scott Helme
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
月光博客
月光博客
S
Securelist
酷 壳 – CoolShell
酷 壳 – CoolShell
V
V2EX
T
Troy Hunt's Blog
W
WeLiveSecurity
GbyAI
GbyAI
N
News | PayPal Newsroom
Y
Y Combinator Blog
C
Cisco Blogs
H
Help Net Security
The GitHub Blog
The GitHub Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
博客园 - 【当耐特】
Jina AI
Jina AI
MongoDB | Blog
MongoDB | Blog
P
Proofpoint News Feed
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
云风的 BLOG
云风的 BLOG
小众软件
小众软件
N
News and Events Feed by Topic

少数派

派早报:Google 发布 Fitbit Air 等 - 少数派 「新人报到」確認需求,再開始 - 少数派 从 SOLO 独立开发者社区,我看到了越来越多开发者开始做自己的产品 - 少数派 我怎么管理那些"不常做,但总会忘"的生活事项 - 少数派 人形机器人量产元年,数据才是具身智能的“生死线” - 少数派 BuhoLaunchpad 高度还原 Mac 启动台:开发历程与思考 - 少数派 五年陪伴依然不舍,DIY 换壳后让罗技 MX Master 3 继续服役 - 少数派 新玩意 240|少数派的编辑们最近买了啥? - 少数派 一日一技|为什么你应该关闭 iOS 的键盘声音 - 少数派 我做了个插件和 Skills,一键提取任何网站的设计规范 Design.md - 少数派 住在三四线城市的你,该开始录播客了 - 少数派 甘南秘境,大白高国 - 少数派 AI的审美:谁让把我变成川内倫子 - 少数派 返工怎能不烦恼,打工人片单总有一部是你的「嘴替」 - 少数派 为了让「上厕所」更健康,我做了一个小工具 - 少数派 AI + Skill,能够让生成的文章去除 AI 味吗? - 少数派 新玩意|韶音OpenDots ONE 耳夹式耳机 - 少数派 《美满》| 在每一个春天的晚上相爱(362) - 少数派 新玩意|优篮子 PS01 MagSnap 磁吸支架 - 少数派 自我整合手记 | 我开始早睡了:用稳定规则,为自由托底 - 少数派 用龙虾(OpenClaw)两个多月,我最深的12个体会 - 少数派 听歌时间到,12 张你可能错过的 2025 华语乐坛好专辑 - 少数派 承诺能追吗 - 少数派 macOS 26启动台没了? 我做了个不一样的App启动器 - Keboard - 少数派 《四海为家的人》| INTJ对话INTJ(361) - 少数派 你发过的那些黑历史,是时候一次清干净了 - 少数派 新玩意:安安静静玩,越玩越专注:计客密码机 - 少数派 iPad 用户首次体验 Android 平板:vivo Pad6 Pro - 少数派 数据逻辑强 - 少数派 极北行+ | 一路向北,探访日本至北之地 | 001 - 少数派 万字剖析:千问App深度体验报告(2026) - 少数派 在2026年,如何真正防止别人抄袭你的作品 - 少数派 怎么用 50 块搭个 AI 语音助手?我踩了 3 天坑 - 少数派 YeeroAI:让 AI 对话真正成为知识管理的一部分 - 少数派 爬泰山 - 少数派 「旅图显影」 App 更新:这次,我们补上了一点「手感」 - 少数派 假期出门太折磨?我的 23 条经验帮你规划惬意旅行 - 少数派 工作流会变吗 - 少数派 Claude Opus 4.6 怎么用最省钱?我测了 5 种方案 - 少数派 GPT Image 2 让图文并茂不再稀罕 - 少数派 用户侧出发——什么是AI,我要不要学习? - 少数派 找片、转存、整理、播放一条龙!让你的付费网盘值回票价 - 少数派 欢迎试用!日课一问2.0插件 - 少数派 自己做的MDeditor,原本想购买 Typora 试了两次支付不成功,干脆自己做一个 - 少数派 vibe coding了一个 3MB 的小工具,让 ~/Downloads 彻底告别混乱 - 少数派 因为受不了 Mac 的风扇策略,我做了一个风扇控制工具 - 少数派 别只怪模型 - 少数派 Warp 终端的 AI 功能怎么用?我测了一周的体验 - 少数派 AI 写代码老是出 bug?这 5 个配置我后悔没早知道 - 少数派 「新玩意」苹果出相机可能就这样:Sigma BF + 45mm F2.8 DG Contemporary - 少数派 一个面向2030年的AI操作系统是什么样子的:浅谈cola这款有灵魂的Agent - 少数派 别只看写代码 - 少数派 每天解决10个问题,还是一口气攻坚解决400个? - 少数派 AI 交易机器人怎么搭?我用 Claude 跑了一周实盘 - 少数派 Maptoposter Online:把你爱的城市画成艺术海报 - 少数派 Function Calling 怎么用?我测了 3 个模型发现差距真大 - 少数派 Legend Talk:我做了个 AI 圆桌,让 160 位思想家围着你的问题转 - 少数派 如何找到自己的蓝方?在小县城寻找压力测试 - 少数派 语音输入与软件接口|2026年聊AI时,我们都聊些什么(上) - 少数派 混动已经卖爆,纯电又来补刀——钛7闪充版简直“不讲武德” - 少数派 本月玩什么|朋友收藏、识质存在、沙罗周期 - 少数派 为什么要每天坚持输出? - 少数派 Claude API 挂了好几个小时,你的项目有备用方案吗? - 少数派 Function Calling 没你想的复杂——我用它做了个有点用的工具 - 少数派 登录系统立即播放视频或者图片音乐的软件 - 少数派 我为什么创建 FlipHTML5 下载工具 - 少数派 残局没电?多品牌外设电量统一管理软件EasyBluetooth已支持RTSS游戏内显示以及AIDA64 - 少数派 前往通义路的路 - 少数派 太好看了,媲美Sun的个人导航页,NAS部署星云门户 - 少数派 乌黑嘴唇“一键检测”上线了 - 少数派 派早报:Claude AI 接入多个创意软件生态、FILCO 生产方接手品牌等 - 少数派 【更新】BearCLI、Claude 连接器与 MCP 服务器 - 少数派 记了上千条流水,还是看不懂财务?我做了一个让 AI 读懂账本的工作台 - 少数派 MINI R56 升级原厂 Sport 模式 - 少数派 新玩意 | 一棵柠檬树(仿真版) - 少数派 Momenta的“物理AI”野望,需迈过“含摩量”这道关 - 少数派 网页直接投屏控制手机!NAS一键部署PandaScrcpy,流畅丝滑可远程。 - 少数派 众测|邀你一同探索随身 AI 硬件入口 YoooClaw C·ONE - 少数派 2050大会:分享时间是真诚 参会记 - 少数派 iPad 赋能电影创作:国内首部宣纸手绘长片《燃比娃》的幕后故事 - 少数派 AI的审美:我用 8 个大模型给 100 张旅行照片打分 - 少数派 普通人如何破圈?去参加一个本地协会 - 少数派 把极空间的图标全换了,主题DIY全攻略打造你的专属NAS桌面 - 少数派 电子便签墙,帮你实现便签自由 - 少数派 我如何用三个 CLI 工具取代文档创建需求 - 少数派 原来真的有人可以玩一辈子 - 少数派 社区速递 139 | 派友热议三月买了啥、复古单反尼康 Df 体验 - 少数派 06 作品的赏析与评价 - 少数派 TDS REVIEW|索尼 WF-1000XM6 降噪真无线耳机体验 - 少数派 35.98万起售的第二代腾势D9,我看重的不是堆料,而是不凑合 - 少数派 鼠须管 Squirrel 皮肤配置指北 - 少数派 从watch ultra2换到redmi watch6 - 少数派 派早报:阿里巴巴发布视频生成模型 HappyHorse 1.0 等 - 少数派 别迷信1M - 少数派 家人们天塌了!网盘“大封杀”,多个渠道多条路,NAS部署PanHub - 少数派 AI与人勾心斗角!NAS一键部署AI狼人杀,假日休闲必备。 - 少数派 电商必备!Comfyui工作流批量生图插件,一次生成12张!支持Nano banana pro模型 - 少数派 Comfyui工作流配置Gpt-image-2模型教程,0.03/张 - 少数派 OpenClaw第三方APi怎么配置?可使用Gpt-image-2模型 - 少数派 会员社区话题精选 Ep. 103 - 少数派
用Material for MkDocs打造极简博客:从写作到部署的全流程实践 - 少数派
2025-05-12 · via 少数派

在静态站点生成器(SSG)的生态中,Mkdocs 凭借其独特优势脱颖而出。与依赖 Node.js 环境的 Hexo 以及借助 Go 语言编译的 Hugo 不同,Mkdocs 仅需基础的 Python 环境即可运行,对不擅长前端开发的创作者极为友好。相较于 WordPress 这类动态博客,Mkdocs 摒弃了数据库的复杂设置,无需繁琐的后台管理,与以 Markdown 为核心的技术写作场景高度契合。

以我自身的需求为例,博客内容中 80% 为技术笔记,涵盖代码示例与架构图,20% 为日常瞎扯的文章。我期望在创作过程中,实现从本地写作、版本管理到自动部署的高效流程,杜绝任何冗余环节。同时,也希望博客具有良好的扩展性,能轻松转化为项目文档。

Mkdocs 的核心优势体现在多个方面。其架构极为轻量化,整个博客本质上是由 Markdown 文件与配置文件构成,使用 Git 托管时,文件体积通常小于 10MB。它具备强大的文档化基因,原生支持目录树导航与 API 文档生成,在组织技术内容方面,比通用博客工具的效率高出 30%(我猜的)。此外,Material 主题体系搭配丰富的插件,如公式渲染、版本追踪等,让博客在美观与功能上达到完美平衡。

成果预览:

二、快速入门:Mkdocs 基础操作指南

2.0 准备工作
 

(1)下载Github Desktop

(2)有一个GitHub账号​​​​​​​

(3)有一个新建好的GitHub仓库且已经克隆到本地的目标文件夹

2.1 环境搭建:用虚拟环境隔离项目依赖

打开克隆到本地的目标文件夹下的终端依次执行

# 创建独立虚拟环境(推荐使用 poetry 或 venv)
python -m venv mkdocs-env
source mkdocs-env/bin/activate  # Linux/macOS 系统
mkdocs-env\Scripts\activate     # Windows 系统
# 安装 Mkdocs
pip install mkdocs #可省略这一步
pip install mkdocs-material

2.2 项目初始化:核心文件结构

在目标文件夹下执行 mkdocs new my-blog 命令,将生成如下项目结构:

my-blog/
├── mkdocs.yml    # 核心配置文件,采用 YAML 格式定义站点元数据
└── docs/
    └── index.md  # 首页

其中mkdocs.yml关键配置解读如下:

site_name: "xxx的博客"       # 站点名称,显示于导航栏
site_url: "https://your-domain.com"  # 部署后的域名

nav:                       # 导航栏菜单结构,层级与目录结构对应
  - 首页: index.md

theme:
  name: material #主题

2.3 本地写作与预览:沉浸式 Markdown 体验

启动实时预览服务器:

mkdocs serve # 可自定义端口

在浏览器中打开 http://127.0.0.1:8000/,即可实时查看效果。

img
加载只需0.11s
img

编写Markdown推荐搭配 VS Code 的「Markdown All in One」插件,该插件具备以下实用功能:

  • 代码块高亮:指定语言(如 python)后,可自动触发语法高亮显示。
  • 表格快速生成:使用 | 列1 | 列2 | 格式,能自动渲染为响应式表格。
  • 脚注语法:采用 [^1] 格式,可生成文末参考文献列表 。

学习markdown请去:https://markdown.com.cn/

三、个性化配置:赋予博客颜值与强大功能

3.1 主题选择:对 Material for Mkdocs 进行深度定制

# 在 mkdocs.yml 中配置主题
theme:
  name: material          # 启用 Material 主题
  features:
    - navigation.tabs      # 顶部标签页导航
    - navigation.sections  # 自动提取标题生成章节锚点
  palette:
    - scheme: default      # 浅色模式
    - scheme: slate        # 暗黑模式(用户可切换)

详细的配置教材请看:https://wcowin.work/blog/Mkdocs/mkdocs2/

进阶定制:通过修改 CSS/JS 实现自定义样式

在 docs/stylesheets/ 目录下创建 extra.css 文件(JS文件同理):

:root > * {
  --md-primary-fg-color:        #4c94cb;
  --md-primary-fg-color--light:#4c94cb;
  --md-primary-fg-color--dark:  #4c94cb;
    
}


button.md-top {
  font-family: LXGW WenKai; /* 修改字体 */
  font-size: 16px; /* 修改字体大小 */
  font-weight: lighter;/* 修改字体粗细 */
  color: #518FC1; /* 修改字体颜色 */
}

:root {
--md-text-font: "LXGW WenKai"; 
} /* 字体 */

再在mkdocs.yml中引入custom.css

extra_css:
  - stylesheets/extra.css # 自定义CSS

3.2 插件扩展:大幅提升博客功能性

推荐插件清单

插件名称功能场景链接
mkdocs-material-extensions支持 Mermaid 图表、Katex 数学公式等功能https://pypi.org/project/mkdocs-material-extensions/
mkdocs-git-revision-date-localized显示文章最后更新时间https://timvink.github.io/mkdocs-git-revision-date-localized-plugin/index.html
令人惊叹的MkDocs项目和插件列表https://github.com/mkdocs/catalog#-theming

实战:插入 Mermaid 流程图

```mermaid
graph LR
A[需求分析] --> B[原型设计]
B --> C[开发编码]
C --> D[测试验收]
D --> E[部署上线]
```

渲染效果:

四、高效工作流:实现从写作到部署的一键式方案

4.1 自动化部署:借助 GitHub Desktop 实现一键发布

在 .github/workflows/ 目录下创建 ci.yml 文件:

mkdir .github
cd .github
mkdir workflows
cd workflows
vim ci.yml 

ci.yml里这样写:

name: ci 
on:
  push:
    branches:
      - master 
      - main
permissions:
  contents: write
jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0
      - uses: actions/setup-python@v4
        with:
          python-version: 3.x
      - run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV 
      - uses: actions/cache@v3
        with:
          key: mkdocs-material-${ env.cache_id }
          path: .cache
          restore-keys: |
            mkdocs-material-
      - run: pip install mkdocs-git-revision-date-localized-plugin
      - run: pip install mkdocs-git-authors-plugin
      - run: pip install mkdocs-git-committers-plugin-2
      - run: pip install mkdocs-rss-plugin
      # - run: pip install jieba
      - run: pip install mkdocs-markdownextradata-plugin
      # - run: pip install mkdocs-glightbox
      # - run: pip install "mkdocs-material[imaging]"
      # - run: pip install mkdocs-statistics-plugin 
      # - run: pip install mkdocs-rss-plugin           
      - run: pip install mkdocs-material 
      - run: pip install --upgrade --force-reinstall mkdocs-material
      - run: mkdocs gh-deploy --force

配置完成后,每次向 main 分支推送内容,都会自动构建并部署到 GitHub Pages 。

注意去开头新建好的Github仓库setings/Actions/General 勾选这两项


到这里先检查一下你的目录结构

目录树状图:

$ tree -a
myblog/
├── .github
│   ├── .DS_Store
│   └── workflows
│       └── ci.yml
└── docs/
│    ├── index.md  # 首页内容,支持 Markdown 及 Mkdocs 扩展语法
│    └── about.md  # 示例页面,可根据需求进行增删或修改
└── mkdocs.yml

做好上面的检查工作,最后去Github Desktop上传到Github仓库即可。

img

看看仓库的分支里有无出现gh-pages

出现gh-pages后去仓库的setings/pages选择下图示意的路径

4.2 图片管理:选用阿里云 OSS 图床方案

安装 oss2 工具用于上传图片:

# 上传脚本示例(需提前安装 pip install oss2)
import oss2
auth = oss2.Auth('your-access-key', 'your-secret-key')
bucket = oss2.Bucket(auth, 'oss-cn-hangzhou.aliyuncs.com', 'your-bucket-name')
bucket.put_object_from_file('img/post-cover.jpg', 'local-path.jpg')

在 Markdown 中引用图片:

![封面图](https://your-bucket-name.oss-cn-hangzhou.aliyuncs.com/img/post-cover.jpg)

4.3 目录结构设计

4.4 单篇markdown文章结构模板

---
title:  标题
# 隐藏的模块
hide:
  #  - navigation # 隐藏左边导航
  #  - toc #隐藏右边导航
  #  - footer #隐藏翻页
  #  - feedback  #隐藏反馈
tags:
  - 你的标签
---

```git
git init  // 初始化本地仓库
git config --global user.name "myname"  // 配置用户名
git config --global user.email "myname@mymail.com"  //配置邮箱
git remote add origin code@github.git  //绑定本地和远程仓库 
git pull   // 拉取远程仓库的变化来同步本地的状态
git add  // 确认本地仓库的变化到本地缓存区
git commit  // 确认本地缓存区的内容,可以准备push
git push   // 提交本地仓库到远程仓库
git status   // 确定本地缓存区的状态
```  


//安装mkdocs
pip install mkdocs-material

//更新mkdocs
pip install --upgrade --force-reinstall mkdocs-material

//完成编辑后,您可以使用以下命令从 Markdown 文件构建静态站点:
mkdocs build --clean


//新标签打开
{target=“_blank”}

示例:[Wcowin's web](https://wcowin.work/){target=“_blank”}

每次写完文章在mkdocs.yml的nav部分使用相对地址引用即可

五、避坑指南:解决新手常见问题

5.1 配置调试:应对 YAML 语法与主题冲突问题

  • 问题:修改 mkdocs.yml 后,服务启动失败。
  • 解决方案:使用 yamllint 工具检查语法(pip install yamllint && yamllint mkdocs.yml)。
  • 问题:Material 主题样式出现异常。
  • 解决方案:清除缓存后重新构建(mkdocs build --clean && mkdocs serve)。

5.2 性能优化:处理大图片与静态资源加载

  • 图片加载:建议利用图床
  • CDN 加速:比如jsdelivr/七牛云

5.3 迁移方案:从 Jekyll 迁移至 Mkdocs

  1. 转换 Markdown 元数据:Jekyll 的 front matter 可直接保留。
  2. 处理 Liquid 模板:使用 Python 脚本进行批量替换(如将 {{ site.url }} 转为 {{ config.site_url }})。
  3. 目录映射:Jekyll 的 _posts 目录对应 Mkdocs 的 posts/ 目录。

六、总结:明晰 Mkdocs 的适用范围与生态拓展方向

6.1 适合人群

  • 技术内容创作者:适合需要高效组织代码示例与架构图的开发者。
  • 中小团队文档负责人:便于快速搭建内部知识库与项目文档中心。
  • 轻量化个人博客者:适合每月写作量小于 20 篇,追求 “零维护成本” 的创作者。

6.2 局限性

  • 动态交互能力较弱:例如评论系统需集成 Disqus 等第三方服务。
  • 多语言支持需手动配置:与 Docusaurus 的 i18n 原生支持形成对比。

6.3 替代方案对比

工具学习成本扩展性适合场景
Mkdocs★☆☆☆☆★★★☆☆技术博客、项目文档
Hugo★★☆☆☆★★★★☆高性能博客、新闻站点
Docusaurus★★★☆☆★★★★★多语言文档、企业官网

附:效率工具与资源列表

官方资源

我写的中文教程

写作工具

图床工具

  • 免费SMMS(需申请 API Token)
  • 专业:ImgURL(支持私有存储)

新人第一次发文,如有冒犯或者错误以及疑问之处,敬请在评论区指出,我会详细阅读后回复