{"id":50430540,"url":"https://github.com/xynrin/xynrin.github.io","last_synced_at":"2026-05-31T14:01:41.137Z","repository":{"id":358940936,"uuid":"1243656972","full_name":"Xynrin/Xynrin.github.io","owner":"Xynrin","description":"我的个人博客、blog、博客模板","archived":false,"fork":false,"pushed_at":"2026-05-27T10:02:16.000Z","size":2681,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-27T12:04:47.882Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://xynrin.github.io/","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Xynrin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-19T14:40:21.000Z","updated_at":"2026-05-27T10:02:20.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/Xynrin/Xynrin.github.io","commit_stats":null,"previous_names":["xynrin/xynrin.github.io"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Xynrin/Xynrin.github.io","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xynrin%2FXynrin.github.io","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xynrin%2FXynrin.github.io/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xynrin%2FXynrin.github.io/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xynrin%2FXynrin.github.io/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Xynrin","download_url":"https://codeload.github.com/Xynrin/Xynrin.github.io/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xynrin%2FXynrin.github.io/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33733754,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-31T02:00:06.040Z","response_time":95,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-05-31T14:01:38.270Z","updated_at":"2026-05-31T14:01:41.132Z","avatar_url":"https://github.com/Xynrin.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n\u003cimg src=\"static/img/avatar.png\" width=\"120\" height=\"120\" alt=\"avatar\" style=\"border-radius:50%\" /\u003e\n\n# ✨ XYNRIN-BLOG\n\n### *xynrin 的个人博客 · 一个安静记录的小角落*\n\n\u003cp\u003e\n  \u003cimg alt=\"Hugo\" src=\"https://img.shields.io/badge/Hugo-extended_v0.161-FF4088?logo=hugo\u0026logoColor=white\u0026style=for-the-badge\" /\u003e\n  \u003cimg alt=\"Theme\" src=\"https://img.shields.io/badge/Theme-Stack_v4-1f6feb?style=for-the-badge\" /\u003e\n  \u003cimg alt=\"License\" src=\"https://img.shields.io/badge/License-GPL_v3-blue?style=for-the-badge\u0026logo=gnu\" /\u003e\n  \u003cimg alt=\"Deploy\" src=\"https://img.shields.io/badge/Deploy-GitHub_Pages-181717?style=for-the-badge\u0026logo=github\" /\u003e\n\u003c/p\u003e\n\n\u003cp\u003e\n  \u003cimg alt=\"GitHub Workflow\" src=\"https://github.com/Xynrin/Xynrin.github.io/actions/workflows/hugo.yml/badge.svg\" /\u003e\n  \u003cimg alt=\"Last commit\" src=\"https://img.shields.io/github/last-commit/Xynrin/Xynrin.github.io?style=flat-square\" /\u003e\n  \u003cimg alt=\"Repo size\" src=\"https://img.shields.io/github/repo-size/Xynrin/Xynrin.github.io?style=flat-square\" /\u003e\n  \u003cimg alt=\"Stars\" src=\"https://img.shields.io/github/stars/Xynrin/Xynrin.github.io?style=flat-square\" /\u003e\n  \u003cimg alt=\"Visitors\" src=\"https://visitor-badge.laobi.icu/badge?page_id=Xynrin.Xynrin.github.io\u0026left_text=访问\" /\u003e\n\u003c/p\u003e\n\n[🌐 Live Site](https://xynrin.github.io) · [📝 写文章](https://app.pagescms.org) · [🐧 Linux.do](https://linux.do/u/xynrin/) · [✉ Email](mailto:xynrin@163.com)\n\n---\n\n\u003c/div\u003e\n\n## 🌟 关于本站\n\n\u003e 不喧哗，自有声。\n\u003e\n\u003e 这里记录我在 **代码 / 学习 / 折腾 / 生活** 中遇到的一切。\n\n```text\n __  ____   ___   _ ____  ___ _   _ \n \\ \\/ /\\ \\ / / \\ | |  _ \\|_ _| \\ | |\n  \\  /  \\ V /|  \\| | |_) || ||  \\| |\n  /  \\   | | | |\\  |  _ \u003c | || |\\  |\n /_/\\_\\  |_| |_| \\_|_| \\_\\___|_| \\_|\n\n```\n\n## ✨ 站点特性\n\n| 模块 | 实现 |\n| :--- | :--- |\n| 🚀 静态生成 | Hugo extended v0.161+ |\n| 🎨 主题 | [hugo-theme-stack](https://github.com/CaiJimmy/hugo-theme-stack) v4 |\n| ☁ 部署 | GitHub Actions → GitHub Pages（自动） |\n| 📝 后台 | [Pages CMS](https://pagescms.org) 网页可视化编辑 |\n| 🔍 搜索 | 自研 fzf 风格模糊搜索 + 键盘导航（`/` 聚焦 · ↑↓ · Enter） |\n| 💬 评论 | [Waline](https://waline.js.org/)（评论 + 点赞 + 浏览量） |\n| 📊 统计 | 不蒜子（PV/UV）+ Waline 单篇浏览量 |\n| 🌗 主题切换 | 跟随系统 / 手动切换 |\n| 📡 RSS | 全文订阅 + 二维码 widget |\n| 🧮 公式 | KaTeX 自动渲染 |\n| 📈 图表 | Mermaid 自动识别 |\n| 🖼 图片 | PhotoSwipe 点击放大 |\n| ⏱ 运行时间 | 实时计时（精确到秒） |\n| 🚀 阅读体验 | 顶部进度条 / 回到顶部 / TOC 高亮 / 字数统计 |\n| 🎨 视觉 | 霓虹渐变 + 卡片色条循环 + Hero 大标语 + 故障 404 |\n\n## 📊 站点统计\n\n\u003cp align=\"center\"\u003e\n  \u003cimg alt=\"README views\" src=\"https://visitor-badge.laobi.icu/badge?page_id=Xynrin.Xynrin.github.io.readme\u0026left_text=README+Views\u0026left_color=00b8d4\u0026right_color=ff2d92\" /\u003e\n  \u003cimg alt=\"Repo views\" src=\"https://visitor-badge.laobi.icu/badge?page_id=Xynrin.Xynrin.github.io.profile\u0026left_text=Repo+Views\u0026left_color=7c5cff\u0026right_color=00e5a0\" /\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg alt=\"Stars\" src=\"https://img.shields.io/github/stars/Xynrin/Xynrin.github.io?style=for-the-badge\u0026color=ff2d92\u0026logo=github\" /\u003e\n  \u003cimg alt=\"Forks\" src=\"https://img.shields.io/github/forks/Xynrin/Xynrin.github.io?style=for-the-badge\u0026color=00b8d4\u0026logo=github\" /\u003e\n  \u003cimg alt=\"Issues\" src=\"https://img.shields.io/github/issues/Xynrin/Xynrin.github.io?style=for-the-badge\u0026color=7c5cff\u0026logo=github\" /\u003e\n  \u003cimg alt=\"Commit activity\" src=\"https://img.shields.io/github/commit-activity/m/Xynrin/Xynrin.github.io?style=for-the-badge\u0026color=00e5a0\" /\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg alt=\"Created at\" src=\"https://img.shields.io/github/created-at/Xynrin/Xynrin.github.io?style=flat-square\u0026color=00b8d4\" /\u003e\n  \u003cimg alt=\"Last commit\" src=\"https://img.shields.io/github/last-commit/Xynrin/Xynrin.github.io?style=flat-square\u0026color=ff2d92\" /\u003e\n  \u003cimg alt=\"Repo size\" src=\"https://img.shields.io/github/repo-size/Xynrin/Xynrin.github.io?style=flat-square\u0026color=7c5cff\" /\u003e\n  \u003cimg alt=\"Code size\" src=\"https://img.shields.io/github/languages/code-size/Xynrin/Xynrin.github.io?style=flat-square\u0026color=00e5a0\" /\u003e\n\u003c/p\u003e\n\n\u003e 上方所有徽章数据均**实时**：README/仓库浏览次数会随访问递增，GitHub 数据每几分钟刷新一次。\n\u003e\n\u003e 全站 **PV/UV** 由 [不蒜子](https://busuanzi.ibruce.info) 统计（无公开 API），数字会出现在站点页脚。\n\u003e 单篇文章 **浏览量与点赞** 由 [Waline](https://waline.js.org) 统计，显示在每篇文章顶部。\n\n## 🛠 本地开发\n\n```bash\n# 克隆（带 submodule）\ngit clone --recurse-submodules https://github.com/Xynrin/Xynrin.github.io.git\ncd Xynrin.github.io\n\n# 启动本地预览（默认 1313）\nhugo server --buildDrafts\n\n# 新建一篇文章\nhugo new content post/your-post-name/index.md\n```\n\n## ⚙ 配置 Waline 后端（一次性）\n\n1. Fork [Waline 模板仓库](https://github.com/walinejs/waline)\n2. 一键部署到 [Vercel](https://vercel.com)（免费）\n3. 在 Vercel 项目设置里添加环境变量：`LeanCloud APP ID / KEY / MASTER_KEY`（在 [LeanCloud](https://console.leancloud.cn) 创建免费应用）\n4. 把 Vercel 给的 URL 填到 `hugo.yaml` 的 `params.comments.waline.serverURL`\n5. 推送即生效\n\n## ☁ 自动部署流程\n\n```mermaid\ngraph LR\n    A[本地 / Pages CMS] --\u003e|push to main| B[GitHub Repo]\n    B --\u003e C[GitHub Actions\u003cbr/\u003ehugo build]\n    C --\u003e D[Upload Artifact]\n    D --\u003e E[Deploy to Pages]\n    E --\u003e F[xynrin.github.io]\n```\n\n## 📂 目录结构\n\n```\n.\n├── .github/workflows/        # GitHub Actions 部署工作流\n├── archetypes/               # 文章模板\n├── assets/                   # 经 Hugo 处理的资源\n│   ├── icons/                # 自定义 SVG 图标 (linuxdo / mail)\n│   ├── img/                  # 图片资源 (avatar / favicon / banner / 赞赏码)\n│   └── scss/custom.scss      # 自定义样式（霓虹渐变 / fzf 搜索 / 故障 404 / 打赏...）\n├── content/                  # 所有文章和页面\n│   ├── about/                # 关于页\n│   ├── post/                 # 文章\n│   ├── archives/             # 归档页\n│   └── search.md             # 搜索页\n├── layouts/                  # 自定义模板覆盖\n│   ├── 404.html              # 故障霓虹 404\n│   ├── home.html             # 含 hero + 文章列表\n│   ├── single.html           # 含打赏 + Waline\n│   ├── index.json            # 搜索索引\n│   ├── page/search.html      # fzf 搜索 UI\n│   └── _partials/            # head/footer/sidebar/widget/article 自定义\n├── static/                   # 原样复制的静态文件\n├── themes/hugo-theme-stack/  # 主题（git submodule）\n├── .pages.yml                # Pages CMS 配置\n├── hugo.yaml                 # Hugo 配置\n└── LICENSE                   # GPL-3.0\n```\n\n## ☕ 打赏\n\n如果这个项目或我写的文章帮到了你，欢迎请我喝杯咖啡：\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"static/img/zan-shang.png\" width=\"240\" alt=\"赞赏码\" /\u003e\n  \u003cbr/\u003e\n  \u003csub\u003e感谢支持 ✨\u003c/sub\u003e\n\u003c/div\u003e\n\n## 📜 License\n\n本仓库**源码部分**采用 [GNU General Public License v3.0](./LICENSE) 协议开源。\n\n**文章内容**采用 [知识共享 署名-非商业性使用-相同方式共享 4.0 国际许可协议（CC BY-NC-SA 4.0）](https://creativecommons.org/licenses/by-nc-sa/4.0/deed.zh) 授权。\n\n## 📚 文档\n\n| 文档 | 内容 |\n|------|------|\n| [部署文档](./docs/DEPLOY.md) | 从零搭建博客的完整流程（环境 / 仓库 / Pages / Vercel / Waline 全套） |\n| [维护文档](./docs/MAINTAIN.md) | 日常维护清单 + 常用网站速查表 + 故障排查 |\n| [架构文档](./docs/ARCHITECTURE.md) | 技术选型 / 数据流 / 关键设计决策 |\n\n\u003e 💡 想知道点哪个网站维护博客？看 [维护文档 → 第三方账号一览](./docs/MAINTAIN.md#-第三方账号一览)。\n\n\u003cdiv align=\"center\"\u003e\n\n---\n\n\u003csub\u003eMade with ❤ by \u003ca href=\"https://github.com/Xynrin\"\u003exynrin\u003c/a\u003e · 写于一个普通的下午\u003c/sub\u003e\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxynrin%2Fxynrin.github.io","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxynrin%2Fxynrin.github.io","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxynrin%2Fxynrin.github.io/lists"}