{"id":21375173,"url":"https://github.com/lsx-s-software/paperpilotapp","last_synced_at":"2025-06-15T18:07:09.181Z","repository":{"id":196819176,"uuid":"696653804","full_name":"LSX-s-Software/PaperPilotApp","owner":"LSX-s-Software","description":"多平台多人协作文献管理软件。Multi-platform collaborative reference manager.","archived":false,"fork":false,"pushed_at":"2023-12-15T12:11:19.000Z","size":2589,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2023-12-15T13:33:32.343Z","etag":null,"topics":["chatgpt","pdfkit","sharedb","swift","swiftui"],"latest_commit_sha":null,"homepage":"","language":"Swift","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/LSX-s-Software.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-09-26T07:18:42.000Z","updated_at":"2023-12-05T01:50:14.000Z","dependencies_parsed_at":"2023-10-20T14:42:59.364Z","dependency_job_id":null,"html_url":"https://github.com/LSX-s-Software/PaperPilotApp","commit_stats":null,"previous_names":["lsx-s-software/paperpilotapp"],"tags_count":0,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LSX-s-Software%2FPaperPilotApp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LSX-s-Software%2FPaperPilotApp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LSX-s-Software%2FPaperPilotApp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LSX-s-Software%2FPaperPilotApp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LSX-s-Software","download_url":"https://codeload.github.com/LSX-s-Software/PaperPilotApp/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225871106,"owners_count":17537172,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["chatgpt","pdfkit","sharedb","swift","swiftui"],"created_at":"2024-11-22T08:49:27.392Z","updated_at":"2024-11-22T08:49:27.979Z","avatar_url":"https://github.com/LSX-s-Software.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"![cover](docs/cover.jpg)\n\n![macOS 14.0+](https://img.shields.io/badge/macOS-14.0%2B-ffffff) ![iPadOS 17.0+](https://img.shields.io/badge/iPadOS-17.0%2B-ffffff) ![visionOS 1.0+](https://img.shields.io/badge/visionOS-1.0%2B-ffffff) ![Swift 5.9+](https://img.shields.io/badge/Swift-5.9%2B-F05138) ![gRPC](https://img.shields.io/badge/gRPC-proto3-2ca1aa)\n\n![wakatime](https://wakatime.com/badge/user/271fef5a-1d0a-45c6-a8f0-9fb67a1417b6/project/c213100d-56fa-45ff-8ade-7c744cf7f708.svg) + ![wakatime](https://wakatime.com/badge/user/271fef5a-1d0a-45c6-a8f0-9fb67a1417b6/project/018b704b-24a1-4f1c-ae04-fae191ff7dc8.svg)\n\n基于 SwiftUI 的多平台多人协作文献管理软件\n\n**100% 原生，不含任何网页、JavaScript 等代码**\n\n**简体中文** | [English](docs/README.en.md)\n\n## 核心功能\n\n- [x] 文献管理\n  - [x] 通过文献的 DOI/URL 添加文献\n  - [x] 导出 BibTeX、GB/T 7714 等格式的引用\n- [x] 跨平台、跨设备访问\n  - [x] 在 Mac、iPad、Apple Vision Pro 等设备上查看文献\n  - [x] 在 iPad 上使用 Apple Pencil 标注 PDF\n  - [x] 数据多端同步\n- [x] 多人协同阅读\n  - [x] **实时同步**富文本笔记\n  - [x] **实时同步**论文批注\n- [x] AI 协助阅读\n  - [x] 论文划词翻译\n  - [x] 论文解析、总结、重写\n  - [x] 可引用论文内容、保留上下文的自由聊天\n\n更多功能详见[完整功能列表](#完整功能列表)\n\n\n## 支持的平台\n\n- macOS 14.0+\n- iPadOS 17.0+\n- visionOS 1.0+\n\n## 开发要求\n\n- macOS 14.0+\n- Xcode 15.0+（**如果需要在 visionOS 上运行，则需要带有 visionOS SDK 的 Xcode beta**）\n- [protoc、protoc-gen-swift、protoc-gen-grpc-swift](https://github.com/grpc/grpc-swift#getting-the-protoc-plugins)\n\n### 开发步骤\n\n1. Clone 整个项目，包括 [paperpilot-common](https://github.com/Nagico/paperpilot-common) 子模块\n\n   ```shell\n   git clone --recursive https://github.com/LSX-s-Software/PaperPilotApp.git\n   ```\n\n2. 将项目根目录中的 `team.xcconfig.template` 文件改名为 `team.xcconfig`，并在其中填写自己的 `DEVELOPMENT_TEAM` 和 `PRODUCT_BUNDLE_IDENTIFIER`\n\n3. 安装 [protoc、protoc-gen-swift、protoc-gen-grpc-swift](https://github.com/grpc/grpc-swift#getting-the-protoc-plugins)，并确保能在 Shell 中正常使用\n\n4. **使用 Shell 运行 Xcode（或 Xcode beta）**\n\n   由于直接运行 Xcode 会导致 Xcode 无法继承在 Shell 中注册的环境变量，编译时 SwiftProtobuf 插件会找不到 protoc 命令，所以需要在 Shell 中用以下命令运行 Xcode：\n\n   ```shell\n   open /Applications/Xcode.app\n   ```\n\n5. 打开 Xcode 的项目设置，在除了 `PaperPilot` 之外的项目设置中修改 `DEVELOPMENT_TEAM` 和 `PRODUCT_BUNDLE_IDENTIFIER`\n\n6. 完成\n\n## 相关仓库\n\n- 项目主仓库：[PaperPilot](https://github.com/LSX-s-Software/PaperPilot)\n- 后端程序仓库：[paperpilot-backend](https://github.com/Nagico/paperpilot-backend)\n\n## 完整功能列表\n\n### 项目\n\n- 本地项目\n  - 无需注册、可完全离线使用\n  - 将本地项目转换为远程项目\n- 远程项目\n  - 部分功能可离线使用\n  - 自动同步项目更改、自动解决冲突\n  - 通过邀请码、链接邀请他人加入项目\n  - 通过输入邀请码加入他人创建的项目\n  - 通过分享链接在网页上查看邀请信息、打开 Paper Pilot 并自动填写邀请码\n  - 分享链接支持 [Open Graph 协议](https://ogp.me/)\n  - 查看项目成员列表\n  - 退出加入的项目\n\n### 论文\n\n- 通过 URL/DOI 自动获取论文信息和 PDF 文件\n- 通过本地文件添加论文\n- 通过拖放、系统共享表单等方式导入 PDF 文件\n- 论文列表\n  - 显示论文标题、作者、出版年份、出版物、添加日期、标签、已读、状态等信息\n  - 自定义列表显示内容（可隐藏、重排信息列、调整列宽度）\n  - 自定义列表排序\n  - 批量设置已读/未读、删除\n  - 拷贝论文信息\n  - 删除论文的PDF文件以释放空间\n- 批量导出 BibTeX、GB/T 7714、JSON、CSV 格式的引用\n\n### 论文阅读器\n\n- PDF 导航器\n  - 切换导航器模式\n    - PDF 大纲\n    - PDF 缩略图\n    - 书签\n    - 隐藏\n  - 根据当前页面更新导航器的高亮\n  - 通过导航器快速跳转至指定页面\n- PDF 阅读器\n  - 矢量渲染\n  - 文本选择\n  - 切换阅读模式\n    - 单页\n    - 单页连续\n    - 双页\n    - 双页连续\n  - 缩放\n  - 链接跳转\n- 标注\n  - **实时同步**\n  - 多种标注类型\n    - 高亮\n    - 下划线\n    - 【仅限iPad】使用手指或 Apple Pencil 绘制标注\n  - 切换标注颜色\n- 笔记\n  - **实时同步**\n  - 自动解决冲突\n  - 富文本（使用 Markdown 格式）\n  - 调整字体大小\n- 搜索\n  - 搜索 PDF\n  - 自定义搜索选项（是否区分大小写）\n  - 显示搜索结果列表\n  - 在 PDF 中高亮搜索结果\n- 书签\n- 论文划词划句翻译\n  - 自动检测语言\n  - 自动删除 PDF 换行\n- 阅读计时器\n\n### AI 功能\n\n- **AI 辅助阅读**\n  - 论文解析、翻译、总结、重写\n  - 聊天中引用论文内容\n  - 自由聊天\n  - 最多可保留最近的 10 条对话作为上下文\n\n### 用户\n\n- 注册登录\n- 自定义头像\n\n### 设置\n\n- 显示服务器状态\n- 查看本地文件所占空间\n- 清理本地文件\n- 清除所有数据\n\n### 系统适配\n\n- 遵循 Apple 设计风格\n- 列表右键/长按菜单\n- 调整侧边栏大小、隐藏侧边栏\n- 通过 macOS 菜单栏和快捷键完成常用操作\n- 通过拖放添加论文及 PDF 文件\n- 在 iPadOS 上支持在同窗口、新窗口中打开论文阅读器\n- 在 iPadOS 上使用 PencilKit 支持用 Apple Pencil 绘制标注\n- 在 visionOS 上使用 Ornament 摆放论文详细信息\n- 支持通过 Spotlight 搜索项目、论文\n- 支持通过系统共享表单导入 PDF 文件\n- 通过 URL Scheme 启动\n- 深色模式\n- 使用 SwiftData 进行数据持久化\n- 多语言（i18n）\n  - [x] 英文\n  - [x] 简体中文\n\n### 其他\n\n- 耗时的操作使用异步，并显示进度条/活动指示器\n- 控件出现/消失时播放过渡动画\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flsx-s-software%2Fpaperpilotapp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flsx-s-software%2Fpaperpilotapp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flsx-s-software%2Fpaperpilotapp/lists"}