- 新增壁纸图库相关组件(WallpaperGalleryView/WallpaperSearchBar等) - 优化编辑器主题服务和系统UI管理 - 新增虚线边框和拖拽描边风格支持 - 完善今日诗词服务和阅读报告功能 - 修复多个UI问题和空指针异常 - 更新依赖库版本和SVG资源 - 优化交互动画和状态管理 - 补充文档和API测试脚本
闲言 WordsLeisure
文字阅读更纯粹
句子阅读 · 壁纸制作 · 图文创作 · 知识探索 · 全平台
关键字
Flutter iOS 26 Liquid Glass 专业编辑器 3D贴纸 液态玻璃 SVG动画 全平台7端 鸿蒙 Frosted Glass Riverpod Drift freezed go_router pro_image_editor AI对话 国学经典 成就系统
项目简介
闲言是一款以句子阅读和图文创作为核心的跨平台应用,源自一个 Lua 原生项目(65 文件 15000+ 行),经过全面 Flutter 重写,采用 iOS 26 Liquid Glass 设计语言,覆盖 Android、iOS、macOS、Windows、Linux、Web 和鸿蒙 7 大平台。核心编辑器模块基于 pro_image_editor 深度定制,集成 8 个子编辑器、7 类贴纸系统、3D 模型交互和完整导出链路。同时构建了句子阅读、知识探索、成就激励、创作分享等完整内容生态,是一个功能完备的图文创作与知识探索工具。
核心特性
📖 句子阅读与内容流
首页句子卡片流,接入 Hitokoto API 支持 12 种句子类型(动画/漫画/游戏/文学/原创/网络/其他/影视/诗词/网易云/哲学/抖机灵),支持每日一卡、快速卡片预览、收藏/点赞/稍后阅读/离线模式,阅读历史自动记录,缓存管理支持一键清理。
🔍 知识发现与搜索
- 发现页:今日一读推荐 + 44 个数据源分类浏览 + 关联推荐
- 全局搜索:模糊搜索 + 热搜榜 + 用户偏好记忆 + 搜索缓存
- 国学经典:11 部经典典籍(论语/黄帝内经/史记/孙子兵法/墨子/庄子/左传/三国志/金匮要略/战国策/万历野获编),支持分类检索
- 健康生活:6 大分类(药品查询/中草药/食物相克/偏方大全/药茶养生/疾病自查)
🎮 互动游戏与趣味
游戏中心集成 3 类互动玩法:
- 成语接龙:成语链式挑战
- 诗词填空:古诗词互动填空
- 谜语/脑筋急转弯/歇后语:揭晓答案式互动答题
💬 智能会话流
灵感页面采用联系人列表布局,会话流支持关键词触发 AI 回复(推荐/爱情/励志/自然/文学/影视),定时推送句子,消息持久化(AppKVStore),导入导出。长按弹出菜单支持置顶/备注/已读/免打扰,毛玻璃搜索栏实时搜索。
🛠️ 工具中心
- 汉字查询:笔画/部首/拼音检索
- 计算器:科学计算器
- 中国传统色:色彩查询与收藏
- OCR 文字识别:图片文字提取
- 图片压缩:多格式压缩导出
📝 文章创作与分享
- 文章广场:公开文章流 + 分类筛选 + 搜索 + 点赞收藏
- 文章编辑:Markdown 编辑 + 封面图 + 标签
- 我的文章:已发布/草稿管理 + Slidable 操作 + 统计头部
- 内容查重:4 种模式(精确/模糊/相似度/综合)+ 多数据源 + 风险可视化 + 匹配详情
- 分享系统:10 种分享目标(复制/链接/系统分享/二维码/卡片/微信/QQ/微博/笔记)+ 自定义排序 + 历史记录
🏆 成就与激励体系
- 成就中心:成就展示/领取 + 头衔进度 + Confetti 庆祝动画 + 进度环图
- 学习打卡:6 类打卡(诗词/成语/故事/名言/游戏/国学)+ 连击效果 + 光晕动画
- 每日签到:日历签到 + 连续签到奖励 + 补签
- 金币系统:金币流水 + 收支统计 + 趋势图 + 来源筛选 + 日期分组
- 积分等级:新手→学徒→熟练工→达人→专家→大师
👤 个人中心
- 用户资料:头像/昵称/个性签名/可编辑信息
- 学习中心:仪表盘 + 每日推荐 + 热力图 + 7 日趋势 + 统计网格
- 数据统计:站点总览 + 签到趋势图 + 金币分布 + 内容饼图 + 增长趋势
- 足迹整合:浏览/点赞/收藏/稍后读/笔记 5 Tab
- 公开主页:用户公开信息展示
✏️ 专业图文编辑器
内置 8 个子编辑器:画笔、文字、裁剪旋转、色调调整、滤镜、模糊、Emoji、贴纸。支持 5 种画布比例切换(9:16/3:4/1:1/4:3/16:9)、三等分/点阵网格参考线、智能对齐吸附、取色器(实时预览+放大镜+HEX)、多节点渐变编辑器、操作历史树形面板。编辑器采用 Frosted Glass 毛玻璃主题,所有 UI 组件统一圆角阴影风格。
🎨 七类贴纸系统
液态玻璃贴纸(8 种预设,liquid_glass_widgets Shader 渲染)、轻量玻璃贴纸(4 种预设,liquid_glass_easy 透镜特效)、SVG 矢量贴纸(8 种本地 SVG)、Lottie 动画贴纸(6 种本地动画)、网络贴纸(6 类 36 张在线资源)、形状贴纸(4 种基础几何)、3D 模型贴纸(几何体/装饰/自然 3 分类 10+ 模型,flutter_3d_controller WebView 实时渲染)。所有贴纸均可拖拽、缩放、旋转,导出时通过 RepaintBoundary 预渲染合成。
🧊 3D 内容引擎
统一使用 flutter_3d_controller(WebView + model-viewer)作为唯一 3D 渲染路径。支持 .glb 模型在线 CDN 加载,独立 3D 预览页面支持动画播放控制、自动旋转、相机重置。低端设备自动检测(Android API<28 / iOS<15)并展示降级提示。3D 贴纸导出采用静态快照方案解决 WebView 无法 RepaintBoundary 截图的限制。
📤 完整导出链路
高分辨率 PNG 保存到相册(gal)、系统分享(share_plus)、.xycard 源文件格式(ZIP 压缩/解压,可再编辑)、JPEG/WebP 压缩导出(flutter_image_compress,体积减少 70%+)、GIF 逐帧导出、草稿自动保存与恢复、导出格式选择+质量滑块。
🖼️ 图片处理增强
图片尺寸/格式检测(image_size_getter,读文件头零解码)、EXIF 旋转自动校正、全屏大图预览(photo_view,缩放+旋转+双击循环+Hero 动画)、多图画廊(PhotoViewGallery)、裁剪编辑器(extended_image,自由/1:1/4:3/16:9 + 旋转翻转 + undo/redo)、大图内存优化(ExtendedResizeImage 降采样)。
🪟 iOS 26 Liquid Glass 设计语言
全套设计令牌系统(颜色/间距/圆角/阴影/字体/毛玻璃),6 套主题配置,日夜双主题自动切换,自适应主题色(从图片提取调色板),Cupertino 优先的组件风格。底部面板采用 stupid_simple_sheet 弹簧动画,页面转场使用 heroine 弹簧物理效果替代 Hero。
架构设计
lib/
├── main.dart # 入口 + 设备能力检测初始化
├── app/ # MaterialApp.router + GlassTheme + Riverpod
├── core/ # 基础设施层
│ ├── router/ # go_router + ShellRoute 声明式路由 (50+ 路由)
│ ├── layout/ # AppShell + GlassBottomBar 统一布局
│ ├── theme/ # 设计令牌 (颜色/圆角/阴影/间距/排版/Glass)
│ ├── network/ # Dio + Interceptor + ApiException
│ ├── storage/ # KvStorage + SecureStorage + Drift 4 表
│ ├── services/ # 深链接/权限/Token 服务
│ └── utils/ # 动画/日志/平台检测/权限/扩展
├── editor/ # 编辑器核心模块
│ ├── models/ # freezed 数据模型 + LayerInfo sealed class
│ ├── providers/ # Riverpod StateNotifier
│ ├── mixins/ # 编辑器行为混入 (7 个)
│ ├── services/core/ # ProEditorBridge + StickerConfigBuilder + WidgetLayerFactory
│ ├── services/export/ # ExportService + XycardService + DraftService + ImageCompressService
│ ├── services/image/ # ImageImportService + ImageInfoService + GlassRenderService
│ ├── services/3d/ # Platform3DService + Flutter3DControllerFactory
│ ├── pages/ # ProEditorPage + MiniEditor(3模式) + 工具页(裁剪/预览/3D)
│ └── widgets/ # 图层面板/颜色选择器/取色器/渐变编辑器/3D面板/水印面板等
├── features/ # 功能模块 (Feature-first 架构)
│ ├── home/ # 首页句子卡片流 + Hitokoto API + 收藏/历史/点赞/稍后读/离线/缓存
│ ├── inspiration/ # 灵感页(联系人列表) + 会话流 + 工具中心 + 足迹
│ ├── discover/ # 发现页 + 分类浏览 + 每日推荐
│ ├── search/ # 全局搜索 + 热搜榜 + 用户偏好
│ ├── article/ # 文章广场 + 编辑 + 我的文章 + 详情
│ ├── classics/ # 国学经典 (11 部典籍)
│ ├── health/ # 健康生活 (6 大分类)
│ ├── game/ # 游戏中心 (成语接龙/诗词填空/谜语)
│ ├── check/ # 内容查重 (4 种模式)
│ ├── achievement/ # 成就中心 + 学习打卡
│ ├── signin/ # 每日签到
│ ├── user_center/ # 个人中心 + 学习中心 + 金币记录 + 公开主页
│ ├── auth/ # 登录注册 + 邮箱验证 + 安全设置
│ ├── note/ # 笔记系统
│ ├── share/ # 分享系统 (10 种目标 + 自定义排序)
│ ├── statistics/ # 数据统计 (站点/用户/签到/金币/内容)
│ ├── profile/ # 个人资料页
│ ├── member/ # 会员
│ ├── source/ # 来源管理
│ ├── settings/ # 主题/通用/账户/密码/数据/字体 设置
│ └── correction/ # 内容纠错
└── shared/ # 共享组件
├── extensions/ # Context 扩展
└── widgets/ # GlassContainer/Skeleton/EmptyState/BottomSheet/ShareSheet/Slidable
技术栈
| 层级 | 技术 |
|---|---|
| 框架 | Flutter 3.24+ / Dart 3.9+ |
| 状态管理 | Riverpod 2.5+ (StateNotifier + 依赖注入) |
| 路由 | go_router 14.0+ (ShellRoute + 深链接) |
| 数据库 | Drift 2.16+ (SQLite 类型安全 + 响应式查询) |
| 数据模型 | freezed 2.5+ (不可变 + JSON 序列化) |
| 网络 | Dio 5.4+ (拦截器 + 请求取消) |
| 后端 | Supabase (Auth + Database + Storage) |
| 图表 | fl_chart 0.69+ (折线图/柱状图/饼图/仪表盘) |
| 动画 | flutter_animate + animate_do + confetti + lottie |
| 设计语言 | iOS 26 Liquid Glass (Cupertino 优先) |
平台支持
| 平台 | 状态 | 说明 |
|---|---|---|
| Android | ✅ | 完整支持 |
| iOS | ✅ | 完整支持 |
| macOS | ✅ | 完整支持 |
| Windows | ✅ | 完整支持 (3D 仅静态) |
| Linux | ✅ | 完整支持 (3D 仅静态) |
| Web | ✅ | 完整支持 (压缩有限制) |
| 鸿蒙 (OpenHarmony) | ✅ | 适配中 |
核心依赖
| 库 | 用途 |
|---|---|
| pro_image_editor | 专业图片编辑引擎 (Frosted Glass 主题定制) |
| liquid_glass_widgets / liquid_glass_easy | iOS 26 液态玻璃组件 + 透镜特效 |
| flutter_3d_controller | 3D 模型交互预览 (WebView + model-viewer) |
| flutter_svg / lottie | SVG 渲染 / Lottie 矢量动画 |
| google_fonts | 15 种字体 (中 6 + 英 9) |
| photo_view / extended_image | 图片缩放查看 / 裁剪编辑 + 内存优化 |
| flutter_image_compress | 原生图片压缩 (JPEG/WebP/PNG/HEIC) |
| image_size_getter | 图片尺寸/格式检测 (零解码) |
| adaptive_palette | 自适应主题色提取 + 流体背景 |
| heroine / stupid_simple_sheet | 弹簧 Hero 动画 / iOS 26 Glass Sheet |
| fl_chart | 数据可视化 (折线图/柱状图/饼图) |
| flutter_animate / animate_do / confetti | 入场动画 / 交互动画 / 庆祝特效 |
| pull_down_button | iOS 风格下拉菜单 |
| flutter_slidable | 列表滑动操作 |
| flutter_markdown_plus | Markdown 渲染 |
项目规模
- 297 个 Dart 文件 (核心代码 lib/)
- 50+ 路由页面 (编辑器 8 页 + 功能 40+ 页)
- 8 个设计令牌文件 (颜色/圆角/阴影/间距/排版/Glass/主题)
- 27 个编辑器服务 (core 9 + export 8 + image 8 + 3d 5)
- 20 个功能模块 (Feature-first 架构)
- 6 个共享组件 (GlassContainer/Skeleton/EmptyState/BottomSheet/ShareSheet/Slidable)
开发进度
当前版本: v1.55.1
| Phase | 内容 | 状态 |
|---|---|---|
| Phase 0 | 基础设施搭建 | ✅ |
| Phase 1 | 编辑器核心 + 首页句子流 | ✅ |
| 编辑器: 图层管理 | LayerPanel + UndoRedo + 图层 CRUD | ✅ |
| 编辑器: 3D 引擎 | 3D 贴纸 + 3D 预览 + 平台调度 | ✅ |
| 编辑器: 图片处理 | 压缩 + 预览 + 裁剪 + 信息读取 | ✅ |
| 编辑器: 3D 修复 | 统一渲染 + 图层模型统一 + bridge 拆分 | ✅ |
| Phase 2 | 内容发现 + 搜索 + 灵感 | ✅ |
| Phase 2.1 | 灵感页联系人列表重构 + 会话流 + 足迹 | ✅ |
| Phase 2.2 | 国学经典 + 健康生活 + 游戏中心 | ✅ |
| Phase 2.3 | 文章广场 + 内容查重 + 分享系统 | ✅ |
| Phase 2.4 | 成就中心 + 学习打卡 + 金币系统 + 数据统计 | ✅ |
| Phase 2.5 | 个人中心 + 学习中心 + 公开主页 | ✅ |
| Phase 3 | 壁纸 + 会员 + 通知 | 🔲 |
| Phase 4 | AI 增强 + 个性化推荐 | 🔲 |
可扩展方向
暂不开发社交功能,以下方向均围绕个人知识管理与创作展开
🤖 AI 智能增强
| 方向 | 说明 | 优先级 |
|---|---|---|
| AI 句子推荐 | 基于阅读偏好智能推荐句子,替代当前关键词匹配 | ⭐⭐⭐⭐⭐ |
| AI 写作助手 | 文章编辑时提供续写/润色/改写建议 | ⭐⭐⭐⭐ |
| AI 摘要生成 | 长文自动生成摘要,快速了解内容 | ⭐⭐⭐⭐ |
| AI 翻译 | 句子/文章多语言翻译 | ⭐⭐⭐ |
| AI 语音朗读 | TTS 语音播报句子和文章 | ⭐⭐⭐ |
| 智能标签 | 自动为文章/笔记生成标签 | ⭐⭐⭐ |
| OCR 增强 | 手写识别 + 表格识别 + 公式识别 | ⭐⭐ |
📚 知识体系深化
| 方向 | 说明 | 优先级 |
|---|---|---|
| 知识图谱 | 句子/诗词/成语之间的关联关系可视化 | ⭐⭐⭐⭐⭐ |
| 学习计划 | 自定义学习计划 + 进度追踪 + 提醒 | ⭐⭐⭐⭐ |
| 诗词地图 | 按地理/朝代/作者维度浏览诗词 | ⭐⭐⭐⭐ |
| 每日一题 | 诗词/成语/国学每日挑战 + 排行榜 | ⭐⭐⭐⭐ |
| 书法欣赏 | 名家书法作品展示 + 临摹模式 | ⭐⭐⭐ |
| 朗读社区 | 语音朗读作品展示(非社交,单人展示) | ⭐⭐ |
🎨 创作能力扩展
| 方向 | 说明 | 优先级 |
|---|---|---|
| 壁纸模板 | 预设壁纸模板 + 一键生成 | ⭐⭐⭐⭐⭐ |
| 日签/卡片 | 每日句子日签卡片生成 + 分享 | ⭐⭐⭐⭐⭐ |
| 诗词排版 | 古诗词竖排/横排精美排版 | ⭐⭐⭐⭐ |
| AI 配图 | 根据句子内容自动匹配/生成配图 | ⭐⭐⭐⭐ |
| 视频卡片 | 句子 + 音乐 + 动效 = 短视频卡片 | ⭐⭐⭐ |
| 手写输入 | 手写板输入 + 笔迹美化 | ⭐⭐ |
📊 数据与个性化
| 方向 | 说明 | 优先级 |
|---|---|---|
| 阅读报告 | 周/月/年阅读报告 + 数据洞察 | ⭐⭐⭐⭐⭐ |
| 习惯追踪 | 阅读习惯分析 + 最佳阅读时间推荐 | ⭐⭐⭐⭐ |
| 个性化推荐 | 基于行为的句子/文章/分类推荐 | ⭐⭐⭐⭐ |
| 数据导出 | 笔记/收藏/历史导出为 PDF/Markdown | ⭐⭐⭐⭐ |
| 云同步 | 多设备数据同步(Supabase) | ⭐⭐⭐⭐ |
| Widget 小组件 | iOS/Android 桌面小组件显示每日句子 | ⭐⭐⭐ |
🛠️ 工具扩展
| 方向 | 说明 | 优先级 |
|---|---|---|
| 天气 + 诗词 | 天气联动推荐诗词/句子 | ⭐⭐⭐⭐ |
| 番茄钟 | 阅读专注计时 + 统计 | ⭐⭐⭐⭐ |
| 倒计时 | 纪念日/节日倒计时 + 配句 | ⭐⭐⭐⭐ |
| 诗词接龙 | 多人对诗(非社交,AI 对手) | ⭐⭐⭐ |
| 字典工具 | 古汉语字典 + 成语词典 | ⭐⭐⭐ |
| 节气日历 | 二十四节气 + 物候 + 诗词 | ⭐⭐⭐ |
🔔 系统增强
| 方向 | 说明 | 优先级 |
|---|---|---|
| 推送通知 | 定时推送句子/打卡提醒 | ⭐⭐⭐⭐⭐ |
| 深色模式增强 | 更多深色主题变体 + 跟随系统 | ⭐⭐⭐⭐ |
| 无障碍 | 语义化标签 + 字体缩放 + 高对比度 | ⭐⭐⭐⭐ |
| 快捷指令 | iOS Shortcuts / Android Shortcuts 集成 | ⭐⭐⭐ |
| 多语言 | UI 国际化 (en/zh/ja/ko) | ⭐⭐⭐ |
| Apple Watch | 手表端每日句子 + 打卡 | ⭐⭐ |
快速开始
# 克隆项目
git clone <repo-url>
cd xianyan
# 安装依赖
flutter pub get
# 生成代码 (freezed / drift / json_serializable)
dart run build_runner build --delete-conflicting-outputs
# 运行
flutter run
文档索引
| 文档 | 说明 |
|---|---|
| CHANGELOG.md | 版本变更记录 |
| AGENTS.md | AI 开发指引 |
| docs/01_项目总览.md | 项目概述 + 架构 + 开发阶段 |
| docs/07_三方库清单.md | 全部三方库选型与版本 |
| docs/08_编辑器功能清单.md | 编辑器架构 + 功能 + 路线图 |
| docs/09_三方库扩展功能开发文档.md | 7 库接口分析 + 扩展功能 |
| docs/10_三方库扩展开发计划勾选表.md | 按 Phase 细分开发任务 |
| docs/11_编辑器空壳功能诊断与修复计划.md | 3D 空壳功能诊断 + 修复记录 |
License
Private — 仅供学习参考