<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Rust | 蔣濤</title><link>https://dylanchiang-dev.github.io/tags/rust/</link><atom:link href="https://dylanchiang-dev.github.io/tags/rust/index.xml" rel="self" type="application/rss+xml"/><description>Rust</description><generator>Hugo Blox Builder (https://hugoblox.com)</generator><language>zh-TW</language><lastBuildDate>Sat, 11 Jul 2026 00:00:00 +0000</lastBuildDate><image><url>https://dylanchiang-dev.github.io/media/icon_hu_982c5d63a71b2961.png</url><title>Rust</title><link>https://dylanchiang-dev.github.io/tags/rust/</link></image><item><title>DC-WeMark：本地優先的微信公眾號 Markdown 排版工具</title><link>https://dylanchiang-dev.github.io/project/dc-wemark/</link><pubDate>Sat, 11 Jul 2026 00:00:00 +0000</pubDate><guid>https://dylanchiang-dev.github.io/project/dc-wemark/</guid><description>&lt;p>DC-WeMark 是一款面向微信公眾號作者的開源 Markdown 排版工具。使用者可以在左側撰寫 Markdown、於右側即時預覽，並將保留樣式的富文字一鍵貼入公眾號編輯器。整個處理流程都在瀏覽器本機完成，不需要帳號、後端或文章上傳。&lt;/p>
&lt;h2 id="我在項目中負責的工作">我在項目中負責的工作&lt;/h2>
&lt;p>這是由我主導設計與開發的獨立開源項目。我負責從問題定義、技術架構到產品交付的完整流程。&lt;/p>
&lt;ul>
&lt;li>&lt;strong>產品設計&lt;/strong>：聚焦 Markdown 作者進入公眾號編輯器時的格式損失、反覆調整與內容隱私問題，確立「排版、預覽、複製」的單一工作流。&lt;/li>
&lt;li>&lt;strong>核心引擎&lt;/strong>：以 Rust 和 &lt;code>comrak&lt;/code> 解析 Markdown AST，將主題規則轉換為公眾號可接受的 inline CSS，並編譯為 WebAssembly。&lt;/li>
&lt;li>&lt;strong>前端體驗&lt;/strong>：使用 Vite 與原生 TypeScript 完成雙欄編輯、同步捲動、手機預覽、檔案匯入匯出、草稿保存與剪貼簿相容處理。&lt;/li>
&lt;li>&lt;strong>設計系統&lt;/strong>：建立 48 款原創排版主題，並提供字體、字號、強調色和複製背景等可調參數。&lt;/li>
&lt;li>&lt;strong>工程交付&lt;/strong>：補齊 Rust 單元測試、Playwright 端到端測試、Docker 自架方案，以及 Cloudflare Pages 的持續部署流程。&lt;/li>
&lt;/ul>
&lt;h2 id="核心創新">核心創新&lt;/h2>
&lt;h3 id="1-將排版核心放進-webassembly">1. 將排版核心放進 WebAssembly&lt;/h3>
&lt;p>Markdown 解析、主題套用與相容性處理都由 Rust 核心完成，再透過 WebAssembly 在瀏覽器執行。同一套核心未來也能延伸至 CLI 或桌面端，而不必重新實作排版規則。&lt;/p>
&lt;h3 id="2-內容不離開使用者裝置">2. 內容不離開使用者裝置&lt;/h3>
&lt;p>系統沒有伺服器邏輯、資料庫或帳號服務。文章從輸入到複製始終保留在本機，兼顧敏感內容的隱私與離線可用性。&lt;/p>
&lt;h3 id="3-針對公眾號編輯器的相容輸出">3. 針對公眾號編輯器的相容輸出&lt;/h3>
&lt;p>一般網頁 CSS 無法直接保留在公眾號編輯器中。DC-WeMark 將樣式逐一內聯到元素，過濾不支援的標籤與屬性，並以 &lt;code>text/html&lt;/code> 寫入剪貼簿，讓貼上後的版式盡可能保持一致。&lt;/p>
&lt;h3 id="4-小體積低依賴的產品架構">4. 小體積、低依賴的產品架構&lt;/h3>
&lt;p>前端不依賴大型 UI 框架，部署產物是可由任何靜態服務託管的檔案。這讓線上版本、自架版本與未來多端重用都保持簡單。&lt;/p>
&lt;h2 id="技術架構">技術架構&lt;/h2>
&lt;ul>
&lt;li>&lt;strong>排版核心&lt;/strong>：Rust、comrak、WebAssembly&lt;/li>
&lt;li>&lt;strong>前端&lt;/strong>：Vite、TypeScript、HTML、CSS&lt;/li>
&lt;li>&lt;strong>品質保障&lt;/strong>：Rust tests、Playwright E2E&lt;/li>
&lt;li>&lt;strong>部署&lt;/strong>：Cloudflare Pages、Docker、nginx&lt;/li>
&lt;li>&lt;strong>授權&lt;/strong>：MIT License&lt;/li>
&lt;/ul>
&lt;p>
·
&lt;/p></description></item></channel></rss>