一个基于 SwiftUI 和 Vditor 构建的现代化 iOS Markdown 编辑器。它结合了原生 iOS 的流畅体验和 Vditor 强大的 Web 编辑能力,专为移动端写作设计。
- 强大内核:集成 Vditor 编辑器,支持所见即所得 (WYSIWYG)、即时渲染 (IR) 和分屏预览 (SV) 模式。
- GitHub 图床集成:
- 支持多图选择批量上传。
- 支持直接调用相机拍照上传。
- 图片自动上传至配置的 GitHub 仓库,并自动插入 Markdown 链接。
- 现代化 UI 设计:
- 采用 SwiftUI 构建,拥有流畅的动画和过渡效果。
- 沉浸式暗色模式:专为夜间写作优化。
- OLED 纯黑模式:极致省电,黑色背景更深邃。
- Glassmorphism 风格:精美的上传 HUD 和 UI 元素。
- 触觉反馈:操作时的细腻震动反馈,提升交互质感。
- SwiftUI:构建声明式用户界面。
- WebKit (WKWebView):通过 Bridge 桥接 Vditor Web 编辑器。
- GitHub API:使用 REST API 实现图片上传功能。
- PhotosUI:原生照片选择器集成。
- Xcode 15.0+
- iOS 17.0+
- 一个 GitHub 账号(用于图床功能)
-
克隆仓库
git clone git@github.com:ryusaksun/Swift_MarkdownEditor.git cd Swift_MarkdownEditor -
配置 GitHub Token
为了使用图片上传功能,你需要配置 GitHub Personal Access Token (PAT)。
- 打开
Swift_MarkdownEditor/Models/LocalConfig.swift文件。 - 找到
myGitHubToken变量。 - 填入你的 GitHub PAT(确保拥有
repo权限以读写仓库)。
⚠️ 注意:LocalConfig.swift包含敏感信息,请确保不要将其误提交到公共仓库(项目已将其加入.gitignore,但请二次确认)。 - 打开
-
运行项目
- 双击打开
Swift_MarkdownEditor.xcodeproj。 - 选择你的模拟器或真机。
- 点击 Run (Cmd + R)。
- 双击打开
- 编辑文本:直接在编辑器区域输入 Markdown 文本。
- 插入图片:
- 点击顶部栏的 图片图标 从相册选择(支持多选)。
- 点击 相机图标 直接拍照。
- 图片会自动上传,上传中会显示幽灵动画 HUD,完成后自动插入编辑器。
- 切换主题:点击顶部栏的 设置/主题图标 可以在标准暗色和 OLED 模式间切换。
Swift_MarkdownEditor/
├── Models/ # 数据模型 (AppConfig, LocalConfig 等)
├── Views/ # SwiftUI 视图 (ContentView, EditorView 等)
├── ViewModels/ # 业务逻辑 (EditorViewModel)
├── Services/ # 服务层 (GitHubService, ImageService)
├── Resources/ # 资源文件 (Vditor 静态资源)
└── Theme/ # 主题管理
欢迎提交 Issues 和 Pull Requests 来改进这个项目!
MIT License (如有)
