<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>公告 on OINK 文档主题</title>
		<link>https://oink.pgsty.com/zh/tags/%E5%85%AC%E5%91%8A/</link>
		<description>Recent content in 公告 on OINK 文档主题</description>
		<generator>Hugo</generator>
		<language>zh-CN</language>
		
		
		
		
			<lastBuildDate>Sun, 09 Aug 2026 18:58:31 +0800</lastBuildDate>
		
			<atom:link href="https://oink.pgsty.com/zh/tags/%E5%85%AC%E5%91%8A/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>OINK 实现预览正式亮相</title>
				<link>https://oink.pgsty.com/zh/blog/2026/oink-announcement/</link>
				<pubDate>Sat, 08 Aug 2026 00:00:00 +0000</pubDate>
				<guid>https://oink.pgsty.com/zh/blog/2026/oink-announcement/</guid>
				<description>&lt;p&gt;今天，我们发布 OINK 实现预览：它从 Docsy 直接演化而来，提供唯一标准产品外壳、仅依赖 Hugo 的消费端构建、本地优先浏览器依赖、通用多语言框架，以及一组从 PGSTY 文档站提炼出的可复用内容组件。&lt;/p&gt;&#xA;&lt;p&gt;这是实现与文档里程碑，不是已经公开的版本化发行。最终公开品牌、模块与软件包身份、首个版本，以及生产 Cloudflare&#xA;Pages 部署，仍是必须显式关闭的发布关卡。&lt;/p&gt;&#xA;&lt;h2 id=&#34;why-oink-exists&#34;&gt;为什么需要 OINK？&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#why-oink-exists&#34; aria-label=&#34;Heading self-link&#34;&gt;&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;多个成熟文档站分别复制了相同的 Docsy 布局、导航、搜索代码、SCSS、JavaScript 与短代码。一个公共修复必须在多个仓库重复实施；与此同时，每个站点都携带前端工具链与隐含网络依赖，让网络隔离构建变得异常复杂。&lt;/p&gt;&#xA;&lt;p&gt;OINK 将真正可复用的部分合并到主题中。产品矩阵、门户、价格页和其他业务专用行为仍留在各自站点；共享主题负责文档外壳、浏览器运行时、多语言路由、无障碍行为与内容组件契约。&lt;/p&gt;&#xA;&lt;h2 id=&#34;what-changes&#34;&gt;有哪些变化？&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#what-changes&#34; aria-label=&#34;Heading self-link&#34;&gt;&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;h3 id=&#34;one-product-instead-of-a-mode&#34;&gt;产品本身，而不是一种模式&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#one-product-instead-of-a-mode&#34; aria-label=&#34;Heading self-link&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;OINK 不是可选皮肤。项目没有 &lt;code&gt;oink.enabled&lt;/code&gt; 开关、&lt;code&gt;params.oink.*&lt;/code&gt;&#xA;命名空间，也没有“上游版与品牌版”并行的模板树。&lt;code&gt;theme/&lt;/code&gt; 中的实现就是产品。&lt;/p&gt;&#xA;&lt;p&gt;这项决策避免维护两套视觉系统与两套测试矩阵。Hugo 原生设置与兼容的 Docsy 参数继续保持原有含义。&lt;/p&gt;&#xA;&lt;h3 id=&#34;hugo-only-consumer-builds&#34;&gt;消费端仅依赖 Hugo 构建&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#hugo-only-consumer-builds&#34; aria-label=&#34;Heading self-link&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;完整消费站点只需运行：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;hugo --gc --minify&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Bootstrap、Font&#xA;Awesome、字体、搜索、图表、API 文档运行时与 OINK 组件都已随主题提交。Node.js、npm、PostCSS、Autoprefixer 与 CDN 下载不属于消费端要求。&lt;/p&gt;&#xA;&lt;p&gt;仓库维护者仍会使用 Node 工具运行测试和更新 vendor 资源；这套维护工具链有意置于公开站点构建契约之外。&lt;/p&gt;&#xA;&lt;h3 id=&#34;local-first-browser-behavior&#34;&gt;本地优先的浏览器行为&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#local-first-browser-behavior&#34; aria-label=&#34;Heading self-link&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;默认 starter 会从生成后的站点提供页面外壳、字体、图标、搜索、Mermaid、KaTeX、Markmap、Swagger&#xA;UI、Redoc、Asciinema、ECharts 与 Infographic 依赖。可选运行时按页面选取，并且每页最多加载一次。&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
