Skip to content
项目

Tomortec/ZhuJian has 83 GitHub stars and 9 forks. GitHot measured 0 stars in 24 hours, 0 in 7 days, and 0 in 15 days. Last checked 2026-11-15 15:09 UTC. Last push 2026-03-04.

这些数字如何统计

可以做什么

  • Custom background: set a global background (with cropping), widgets can mirror it
  • Colorful cards: per-note foreground/background color and tags for categorization
  • Typography: multiple built-in fonts (e.g., Alimama DongFangDaKai, Source Han Serif)
  • Bulk edit: long-press in Outline to multi-select and batch update color/tags

实测星标增长

24小时
0
7天
0
15天
0
1个月
正在收集历史

各周期内的星标净变化,周期相互重叠,并非每日新增。缺失的测量保持空白。星标代表关注度,不代表软件质量。

关于

iOS app for collecting and reviewing sentences: OCR capture, card‑based browsing, colorful tags & fonts, widgets, optional iCloud sync. Minimal SwiftUI quotes notebook—scan, type or collect via link; personalized colors/fonts, QR sharing and widgets. 一款专注记录句子的 iOS App:OCR 扫描、卡片化整理、颜色与字体个性化、桌面小组件、iCloud 同步、多字体/多配色、批量编辑与可访问性优化

效率工具

README.zh-CN.md

原文

ZhuJian Banner

拾句 ZhuJian

专注于「收集美好句子」的 iOS App。用最顺手的方式把你看到、想到的句子记录下来:拍照扫描、手动输入、从分享链接收集,随后以卡片的形式呈现与复习。支持个性化的颜色、标签与字体,也提供桌面小组件随时回顾。

当前开源仓库聚焦于 App 端实现与最佳实践示例,默认关闭所有对外域名与私有接口的依赖,便于开箱体验与二次开发。

核心特性(v1.3.0)

  • 自定义背景:设置全局背景图(含裁剪),小组件亦可同步背景
  • 多彩卡片:为每张卡片分别设置前景/背景色、添加标记进行分类
  • 更有氛围的字体:内置多套字体(如阿里妈妈东方大楷、思源宋体等)
  • 批量编辑:在纵览页长按进入多选,批量修改颜色与标记
  • 分享卡片:支持生成带二维码的分享卡片,方便他人收集
  • 排序和复习:支持按修改时间、创建时间、标题、标记、标记颜色排序
  • 安全与同步:可选开启 FaceID/TouchID 保护;支持 iCloud 同步(可选)
  • 无障碍优化:为 VoiceOver 等辅助功能做了事件与提示适配

更多亮点见应用内的新版本引导页(设置 > 新版本:多彩)。

截图

Board 01 Board 02 Board 03 Board 04

Board 05 Board 06 Board 07

快速开始

  • 系统要求:Xcode 14+,iOS 15+
  1. 安装依赖
# 如果尚未安装 CocoaPods:
brew install cocoapods   # 或 gem install cocoapods

pod install
  1. 打开工程
open ZhuJian.xcworkspace
  1. 配置签名
  • 在 Xcode 的 Targets(App / Share Extension / Widgets)下将 Signing Team 设置为你自己的开发者团队;
  • 如无需 iCloud 同步或 Widgets,可临时关闭对应 Capabilities 以便快速运行。
  1. 运行
  • 选择模拟器或真机,直接 Run;
  • 首次构建可能会触发 Swift Package 的依赖解析(网络环境影响较大)。

可选配置(Info.plist)

项目默认“零外部依赖”即可运行。若你希望启用链接跳转、分享收集或远程开关等能力,可在 App 的 Info.plist 添加以下可选键:

  • ZJ_ALLOWED_URL_HOSTS:允许处理的 HTTPS 域名(逗号分隔)
    • 示例:share.example.com, app.example.com
  • ZJ_SHARE_BASE_URL:分享收集页基址(用于生成分享链接与二维码)
    • 示例:https://share.example.com
  • ZJ_HELP_URL:应用内“帮助”页面地址
  • ZJ_FONTS_INFO_URL:字体说明与版权信息页地址
  • ZJ_HOME_URL:应用主页地址(“关于开发者与必要说明”中的入口)
  • ZJ_API_MEMORIAL_URL:纪念日变灰状态查询接口(GET,返回 {"MemorialDay":true|false})
  • ZJ_API_SUPPORTS_URL:支持/点赞计数接口(PUT,LeanCloud 风格)
  • ZJ_LEANCLOUD_ID / ZJ_LEANCLOUD_KEY:配合上述 API 的鉴权 Header 值

未配置这些键时,相关功能将自动隐藏或安全降级;不会发出任何外部请求。

此外,日志上传至对象存储(COS)的能力也默认关闭;若需要,可在 Info.plist 配置:

  • ZJ_QCLOUD_TOKEN_URL:用于获取临时密钥的后端地址
  • ZJ_QCLOUD_REGION:COS 区域名(如 ap-beijing)
  • ZJ_QCLOUD_BUCKET:COS Bucket 名

启用后,LogManager/AppDelegate 会使用这些配置动态初始化上传所需的 SDK。

技术栈与架构要点

  • UI:SwiftUI(iOS 15+)
  • 数据:Core Data(通过 PersistenceManager 管理);可选 iCloud 同步(SyncKit + CloudKit)
  • 小组件:WidgetKit(支持颜色与字体的同步展示)
  • 可访问性:VoiceOver/动态字体等适配(大量 accessibilityLabel 与状态广播)
  • 分享:分享卡片支持生成二维码;可根据配置输出分享链接
  • 字体与主题:内置多套字体与配色方案,提供个性化卡片配置与批量编辑
  • 架构风格:以 Manager 类承载跨页面状态(如 StorageManager、SettingsManager、FontManager 等),通过 EnvironmentObject 注入;页面拆分遵循“单向数据 + 事务下沉”的思路,保证状态可控

隐私与开源说明

  • 仓库中不包含任何私密密钥与后端域名;默认不会发起对外网络请求;
  • 如果你计划发布到 App Store,请自行替换 bundle id、签名与相关配置;

贡献

欢迎提 Issue / PR。对于较大的改动,请先在 Issue 中达成一致的方向与方案。

许可

MIT License,见 LICENSE。