ianchen40 downloadsPreview Markdown with WeChat-ready styling and two-way scroll sync. Convert local images to Base64 and copy rich text to the WeChat draft editor—no image host needed.
English | Chinese translation
Keep your WeChat formatting workflow inside Obsidian.
WeChat Publish Preview is a desktop plugin for writers who draft Markdown in Obsidian and publish through the WeChat Official Account editor. It renders the active note with WeChat-ready styling in the right sidebar, keeps the editor and preview aligned with bidirectional scroll sync, and copies the formatted article body in one click for direct pasting into the WeChat draft editor.
During copy, local images are automatically converted to Base64 and embedded with the rich text, so no image-hosting service is required. Remote images, math, and Mermaid diagrams are also converted when possible. All conversion happens in memory: the plugin never writes Base64 data back to your notes and does not require a WeChat AppID or AppSecret.

Cmd/Ctrl + P.The preview uses the Markdown filename as the article title. That generated title is removed from the copied body because the WeChat title is a separate input field.
Callout type symbols remain visible in the preview, while their title, body, border, and background inherit the selected theme's blockquote treatment. During copy, folding controls are removed and callouts become static semantic blocks for better WeChat compatibility.
Task controls are drawn by the plugin rather than by Obsidian, so they do not inherit Obsidian's default purple checkbox style. Checked tasks use the selected theme's accent fill, unchecked tasks use its accent border, and the same appearance is retained in copied content.
| Content | Preview | WeChat copy |
|---|---|---|
| Headings, paragraphs, emphasis, links | ✅ | ✅ |
| Ordered, unordered, and task lists | ✅, theme-colored tasks | ✅, state and theme color retained |
| Blockquotes, callouts, footnotes | ✅, callout symbols retained | ✅, converted to static compatible blocks |
| Code blocks and tables | ✅ | ✅ |
| Local and relative Obsidian images | ✅ | Embedded as Base64; no image host needed |
| Remote images | ✅ | Converted to Base64 when possible; otherwise warned |
| Math and Mermaid | ✅ | Converted to images |
The plugin includes 30 Raphael Publish-inspired themes. It does not require WeChat account configuration and does not submit drafts automatically.
WeChat Publish Preview.BRAT: Add a beta plugin for testing from the command palette.joahyi-ai/WeChat-Publish-Preview.Download main.js, manifest.json, and styles.css from the latest GitHub Release, then place them in:
<Vault>/.obsidian/plugins/wechat-publish-preview/
Reload Obsidian and enable the plugin.
WeChat Publish Preview runs locally, does not collect telemetry, and never submits drafts automatically. It reads only the active note and referenced Vault images. Network requests occur only for remote images, and clipboard access occurs only after an explicit copy action.
README.md fully English and moved the Chinese documentation to README.zh-CN.md to satisfy the Obsidian Community directory's English documentation requirement.pnpm install
pnpm verify
The article theme library and some compatibility strategies are adapted from the MIT-licensed Raphael Publish. See THIRD_PARTY_NOTICES.md for details.
The README structure and installation flow were inspired by Wechat Converter.