{"id":36934728,"url":"https://github.com/rustypiano/clipman","last_synced_at":"2026-06-04T09:00:28.146Z","repository":{"id":322738038,"uuid":"1090699466","full_name":"RustyPiano/ClipMan","owner":"RustyPiano","description":"Lightweight clipboard manager with persistent history and instant search. Built with Rust + Svelte.","archived":false,"fork":false,"pushed_at":"2025-11-25T08:02:22.000Z","size":1250,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-04T05:47:11.792Z","etag":null,"topics":["clipboard","clipboard-history","clipboard-manager","cross-platform","desktop","developer-tools","fts5","productivity","productivity-tools","rust","sqlite","svelte","tauri","utilities"],"latest_commit_sha":null,"homepage":"https://www.clipman.top","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RustyPiano.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-06T02:44:18.000Z","updated_at":"2026-01-24T01:39:31.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/RustyPiano/ClipMan","commit_stats":null,"previous_names":["kiaana/clipman"],"tags_count":20,"template":false,"template_full_name":null,"purl":"pkg:github/RustyPiano/ClipMan","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RustyPiano%2FClipMan","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RustyPiano%2FClipMan/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RustyPiano%2FClipMan/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RustyPiano%2FClipMan/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RustyPiano","download_url":"https://codeload.github.com/RustyPiano/ClipMan/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RustyPiano%2FClipMan/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33897568,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-04T02:00:06.755Z","response_time":64,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["clipboard","clipboard-history","clipboard-manager","cross-platform","desktop","developer-tools","fts5","productivity","productivity-tools","rust","sqlite","svelte","tauri","utilities"],"created_at":"2026-01-13T09:53:12.870Z","updated_at":"2026-06-04T09:00:28.106Z","avatar_url":"https://github.com/RustyPiano.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ClipMan\n\n\u003cdiv align=\"center\"\u003e\n\n\u003cimg src=\"app-icon.png\" alt=\"ClipMan\" width=\"128\" /\u003e\n\n**轻量级现代剪切板管理器**\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Version](https://img.shields.io/badge/Version-2.0.0-blue.svg)](https://github.com/RustyPiano/ClipMan/releases)\n[![Platform](https://img.shields.io/badge/Platform-Windows%20%7C%20macOS%20%7C%20Linux-lightgrey.svg)](https://github.com/RustyPiano/ClipMan)\n\n[下载使用](#-安装) · [功能特性](#-功能) · [开发文档](#-开发)\n\n[English](README_EN.md)\n\n\u003c/div\u003e\n\n## 简介\n\nClipMan 是一个**轻量级**、**高性能**的现代剪切板管理器。采用 Rust + Svelte 5 技术栈，专注于提供核心实用功能。\n\n**为什么选择 ClipMan？**\n\n- ✅ **永久保存** - 重启系统后历史依然可用\n- ✅ **置顶功能** - 常用内容一键置顶，随时调用\n- ✅ **轻量快速** - 安装包体积小，启动迅速\n- ✅ **现代界面** - 简洁美观，支持多主题\n- ✅ **开源免费** - MIT 协议，完全开源\n\n## ✨ 功能\n\n### 核心特性\n\n- **📌 置顶常用内容** - 一键置顶代码片段、命令、链接等，永久保存\n- **💾 持久化存储** - SQLite 本地数据库，重启不丢失，智能去重\n- **🔍 全文搜索** - SQLite FTS5 + trigram 索引，支持中英文实时搜索\n- **⌨️ QuickBar 快捷取用** - 任意应用快速调出（默认 `Cmd/Ctrl+Shift+V`），键盘选择并按设置自动粘贴或仅复制\n- **🎯 托盘菜单** - 快速访问最近和置顶内容\n- **🎨 多主题** - 浅色/深色/淡粉色主题，跟随系统\n- **🌐 多语言** - 支持中文和英文，自动检测系统语言\n\n### 其他功能\n\n- 🛡️ 跳过密码类剪切板内容（可选）\n- 🔄 自动更新\n- 🚀 开机自启动\n- 📁 自定义存储位置\n- 🧹 数据管理\n\n## 📥 安装\n\n访问 [GitHub Releases](https://github.com/RustyPiano/ClipMan/releases/latest) 下载：\n\n- **Windows**: `ClipMan_2.0.0_x64_en-US.msi`\n- **macOS (Apple Silicon)**: `ClipMan_2.0.0_aarch64.dmg`\n- **macOS (Intel)**: `ClipMan_2.0.0_x64.dmg`\n- **Linux**: `ClipMan_2.0.0_amd64.AppImage`\n\n### macOS 权限\n\n首次运行需授予辅助功能权限：\n\n**系统设置** → **隐私与安全性** → **辅助功能** → 添加 ClipMan\n\n## 🚀 使用\n\n1. 使用快捷键 `Cmd+Shift+V` (macOS) / `Ctrl+Shift+V` (Windows) 打开\n2. 所有复制内容自动保存在历史列表中\n3. 点击 📌 图标置顶常用内容\n4. 搜索框快速查找历史记录\n5. 点击条目执行 QuickBar 默认取用行为：默认自动粘回当前应用；关闭自动粘贴后仅复制\n6. 点击托盘图标快速访问（托盘菜单始终仅复制）\n\n## 🛠️ 技术\n\n**后端**\n\n- Tauri 2.11 - 轻量桌面框架\n- SQLite + FTS5 - 高性能数据库\n- Rust - 内存安全，性能卓越\n\n**前端**\n\n- Svelte 5 - 现代响应式框架\n- Tailwind CSS 4 - 现代样式方案\n- Vite 8 - 快速构建工具\n\n**性能定位**\n\n- ⚡ 轻量弹窗：QuickBar 使用隐藏小窗口，按需唤起\n- 💾 本地优先：SQLite 持久化，无后台网络服务\n- 🔍 索引搜索：FTS5 + trigram 索引用于降低搜索延迟\n- 📦 小体积分发：具体安装包大小以当前 Release 构建产物为准\n\n## 🔧 开发\n\n### 环境要求\n\n- Bun 1.3+（推荐）或 Node.js 20.19+\n- Rust 1.96.0（项目通过 `rust-toolchain.toml` 固定）\n- 系统: Windows 10+ / macOS 10.13+ / Linux\n\n### 快速开始\n\n```bash\n# 克隆项目\ngit clone https://github.com/RustyPiano/ClipMan.git\ncd ClipMan\n\n# 安装依赖\nbun install\n\n# 开发\nbun tauri dev\n\n# 构建\nbun tauri build\n```\n\n### 项目结构\n\n```\nClipMan/\n├── src/              # Svelte 前端\n│   ├── lib/\n│   │   ├── components/   # UI 组件\n│   │   ├── stores/       # 状态管理\n│   │   └── i18n/         # 多语言\n│   └── routes/           # 页面路由\n├── src-tauri/        # Rust 后端\n│   └── src/\n│       ├── main.rs       # 入口、托盘\n│       ├── clipboard.rs  # 剪切板监控\n│       ├── storage.rs    # 数据库\n│       ├── paste.rs      # 复制/自动粘贴\n│       ├── window.rs     # QuickBar / 设置窗口\n│       └── settings.rs   # 设置管理\n└── package.json\n```\n\n## 🗺️ 路线图\n\n**已完成**\n\n- [x] 剪切板监控和历史\n- [x] 置顶功能\n- [x] 全文搜索\n- [x] QuickBar 自动粘贴\n- [x] 全局快捷键\n- [x] 系统托盘\n- [x] 自动更新\n- [x] 多主题\n- [x] 跳过密码类剪切板内容\n- [x] 自定义存储位置\n- [x] 开机自启动\n\n**计划中**\n\n- [ ] 智能图片压缩（AVIF/WebP/MozJPEG，可配置）\n- [ ] 多设备同步\n- [ ] 分组管理\n- [ ] 规则过滤\n- [ ] 插件系统\n- [ ] 命令行工具\n\n## 🤝 贡献\n\n欢迎通过 Issue 或 Pull Request 贡献。\n\n- 🐛 [报告 Bug](https://github.com/RustyPiano/ClipMan/issues)\n- ✨ [功能建议](https://github.com/RustyPiano/ClipMan/issues)\n- 💬 [讨论区](https://github.com/RustyPiano/ClipMan/discussions)\n\n## 📄 许可证\n\n[MIT License](LICENSE)\n\n## 🙏 致谢\n\n- [Tauri](https://tauri.app/) - 桌面应用框架\n- [Svelte](https://svelte.dev/) - 前端框架\n- [rusqlite](https://github.com/rusqlite/rusqlite) - SQLite 绑定\n- [arboard](https://github.com/1Password/arboard) - 剪切板库\n\n---\n\n\u003cdiv align=\"center\"\u003e\n\n**如果觉得有帮助，请给个 ⭐️ Star！**\n\nMade with ❤️ by [RustyPiano](https://github.com/RustyPiano)\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frustypiano%2Fclipman","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frustypiano%2Fclipman","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frustypiano%2Fclipman/lists"}