# wxmd **Repository Path**: mengl248/wxmd ## Basic Information - **Project Name**: wxmd - **Description**: 类 mdnice 工作流:**Markdown 写作 → 选主题实时预览 → 一键复制 → 粘贴公众号后台样式不丢**。 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2026-10-13 - **Last Updated**: 2026-10-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # wxmd —— 公众号 Markdown 排版编辑器 类 mdnice 工作流:**Markdown 写作 → 选主题实时预览 → 一键复制 → 粘贴公众号后台样式不丢**。 Web 在线版 + Tauri 桌面版双形态(同一纯前端核心)。当前版本 v1.2。 [![license](https://img.shields.io/badge/license-MIT-blue.svg)](./LICENSE) [![version](https://img.shields.io/badge/version-1.2.0-green.svg)](./CHANGELOG.md) ## 界面预览 ![wxmd 主界面:左编辑右实时预览](./docs/assets/readme-home.png) ![微信白名单模拟预览(手机框)](./docs/assets/readme-wechat.png) ## 快速开始 ```bash npm install npm run dev # 开发(http://localhost:5173) npm test # 单元测试(vitest,113 用例) npm run build # 产物 dist/(个别 Node/npm 组合下若报错,改用 npx vite build) npm run preview # 本地预览构建产物 ``` 其它脚本:`npm run typecheck`(vue-tsc 严格模式)、`npm run lint`、`npm run format`。 ## 桌面版(Tauri 2,需 Rust 工具链) ```bash npm run build cd src-tauri # 首次需图标:npx @tauri-apps/cli icon <源图>(输出到 src-tauri/icons/) cargo install tauri-cli --version "^2" cargo tauri build # 产出 msi/dmg/app ``` 桌面版增强:凭证存系统 keyring、本地文件夹工作区、原生剪贴板;在线版功能不弱于桌面版(Web 标准 API 优先)。 ## 功能地图 | 分类 | 功能 | |---|---| | 编辑/预览 | CodeMirror 6 双栏实时预览、同步滚动(可关)、大纲跳转、暗色模式、快速打开(Ctrl+P)、快捷键帮助(Ctrl+/) | | 公众号复制 | 一键复制内联化格式、复制前自检清单(风险分级提示)、微信白名单模拟预览、手机框真机预览、外链自动转文末脚注 | | 主题 | 21 套文章主题 + 6 套代码主题、自定义 CSS、可视化微调(字号/行高/边距/强调色) | | 富内容 | 代码高亮(微信一致模式)、KaTeX 公式、Mermaid 图(懒渲染)、表格/任务列表/脚注 | | 文件管理 | 草稿自动保存(2s 停顿落盘)+ 崩溃恢复、本地文件夹工作区、GitHub 云端工作区(Ctrl+S 手动写回)、回收站/归档、本地文件版本快照 | | 图床 | GitHub / 自定义端点 / base64 兜底,粘贴拖入自动上传、失败重传 | | AI 辅助 | 自带 Key(仅存本机)、模型列表自动获取、润色/续写/总结 | ## 项目结构 ``` src/ components/ 18 个单文件组件(编辑/预览/工具栏/面板/对话框) composables/ 11 个组合式模块(useDoc 聚合入口) lib/ 纯函数库(markdown/inliner/wechat/checklist/preview/storage…) styles/ 设计令牌与全局样式 tests/ vitest 单元/组件测试(15 文件 113 用例) src-tauri/ Tauri 2 桌面壳(Rust) ``` ## 安全边界 - 图床/AI 凭证仅存本机:桌面版走系统 keyring,Web 版降级 localStorage;无服务端、无遥测 - 渲染链三道闸防 XSS:`html:false` → 属性剥离 → 白名单模拟 - 文章内容仅在用户主动上传图片/调用 AI 时离开本机 ## 社区与贡献 - 贡献流程与代码约定见 [CONTRIBUTING.md](./CONTRIBUTING.md) - 漏洞上报见 [SECURITY.md](./SECURITY.md);版本演进见 [CHANGELOG.md](./CHANGELOG.md) - 设计文档(调研/需求/系统设计/内部契约/部署+用户手册)见 [docs/](./docs/README.md) ## 已知限制 - KaTeX 字体未随包分发:公式结构正确但以系统字体渲染(体积权衡) - 公式/Mermaid 不在公众号白名单内:复制时按自检清单提示降级处理 - 桌面版未发布预编译安装包:需按「桌面版」节自行构建 - 公众号平台白名单可能变化:粘贴效果以复制前自检清单提示为准 ## 许可证 本项目以 **MIT** 许可开源,详见 [LICENSE](./LICENSE)。 第三方与借鉴声明: - 主题设计思路借鉴 doocs/md(WTFPL);本项目主题 CSS 为原创实现 - 依赖均为宽松许可:Vue 3 / Vite / CodeMirror 6 / markdown-it / KaTeX(MIT)、highlight.js(BSD-3-Clause)、Tauri(MIT/Apache-2.0) - 不引入任何 GPL-3.0 代码