【生活娱乐】Journi — AI 驱动的人生意义发现平台
标签:
生活娱乐
作品类型:iOS / Android 双端原生 App(Flutter)
报名帖链接:【生活娱乐】Journi — AI 驱动的人生意义发现平台
一、Demo 简介
是什么
Journi 是一款 AI 驱动的人生意义发现平台(Personal Meaning OS),形态为 iOS / Android 双端原生 App(基于 Flutter)。它把"日记"从"存储事件"升级为"发现意义"——每次记录都会被 AI 从成长 / 哲学 / 历史 / 文学 / 电影 / 心理学 / 未来 7 个维度流式解读,并通过像素拼图、成长图谱、未来之信等仪式化设计,把碎片化的人生事件编织成有意义的叙事。
“微信朋友圈是发给朋友的,Journi 是发给未来的自己。”
面向谁
- 核心用户:25–40 岁、有自我反思习惯的城市知识工作者(产品经理、设计师、开发者、内容创作者)
- 延伸用户:写日记但难以坚持的人;正在经历人生转折(跳槽、创业、婚恋、生育)需要梳理内心的人
- 潜在用户:心理学爱好者、斯多葛哲学实践者、长期主义者
主要功能
1. Capture · 仪式化记录
全屏沉浸式输入,10 秒完成一条记录。支持文字 + 情绪 + 图片 + 地理位置。采用"数字文房"美学(森林绿、赤陶土、金色微光、纸质质感),让记录回归沉思的仪式感。所有图片仅本地存储,隐私优先。
2. Discover Meaning · AI 意义发现引擎
点击任意一条记录,AI 从 7 个维度流式解读这件事的隐藏意义(SSE 打字机动画):
- 成长维度:这件事如何推动你向前
- 哲学维度:存在主义、斯多葛、东方哲学视角
- 历史维度:人类历史上的回响
- 文学维度:隐喻、叙事原型
- 电影维度:蒙太奇与角色弧光
- 心理学维度:认知行为、积极心理学
- 未来维度:30/90/365 天后的回望
双引擎架构:云端 Cloudflare Workers AI(多维度深度解读) + 端侧 Gemma 4 LiteRT-LM(隐私优先的本地推理),按设备性能自动分档(nano / lite / full)。
3. Weekly Ritual · 像素拼图仪式
每天写日记自动解锁 10×10 像素拼图的一个区域(Voronoi 算法有机分区,避免机械网格感),7 天拼出 AI 生成的本周人生图案。把"坚持写日记"从负担变成期待。
4. Vault · 意义收藏馆
把触动的 AI 解读保存到 Vault,按类别 FilterChip 筛选回看,构建属于自己的意义词典。
5. Widget · 桌面陪伴
iOS / Android 桌面小组件:
- Echo Widget:展示今日 AI 解读的"意义种子"
- Mountain Widget:山形进度图,可视化本周记录完成度
二、Demo 创作思路
灵感来源
灵感来自 Joseph Campbell 的 “Hero’s Journey”(英雄之旅) 哲学——每个人都是自己人生故事里的英雄,而 AI 应该是引路人而非工具。
我观察到一个现象:现代人每天都在产生大量生活碎片——朋友圈动态、备忘录、相册截图、聊天记录,却从未真正"读懂"自己。日记写了就忘,事件之间没有关联,成长看不见轨迹。我们记录了人生,却丢失了意义。
想解决的问题
- 传统日记 App 只"存"不"懂":Day One、格志日记只负责存储,用户记完依然迷茫
- AI 工具能聊天却无法构建长期成长认知:ChatGPT、豆包能回答问题,但没有你的历史数据,每次对话都是"失忆"的
- 记录难以坚持:缺乏即时反馈和奖励机制,写日记变成负担
- 成长看不见轨迹:散落的记录无法形成认知体系
- 现有产品过度社交化:朋友圈、小红书鼓励表演,而非真实的自我对话
- 隐私焦虑:云端 AI 工具让用户不敢记录真实的内心
为什么做这个方向
- AI 时代的差异化:通用 AI 工具(ChatGPT / 豆包)是"失忆"的,Journi 通过长期数据沉淀构建个人意义图谱,形成切换成本
- 隐私优先的技术路线:端侧 Gemma 4 LiteRT-LM + 本地图片存储,让用户敢于记录真实内心,这是云端 AI 工具做不到的
- 仪式感对抗碎片化:像素拼图、LED 点阵、数字文房美学,把"刷手机式记录"拉回"沉思式记录"
- 商业可行性:Freemium 订阅制(Free / Plus $4.99 / Pro $9.99 / Mentor $19.99),AI 推理边际成本随 Cloudflare Workers AI 规模化下降
三、Demo 体验地址
由于 Journi 是双端原生 App,无法提供 Web 在线体验链接。采用以下两种方式之一供评审体验:
方式 A:视频预览
方式 B:下载apk安装(推荐)
附件是apk安装文件,可在安卓手机中体验:
- 产品核心功能 walkthrough
- Discover Meaning AI 解读模拟(含真实案例文本)
- Weekly Ritual 像素拼图交互 demo
- LED Matrix 点阵屏动态展示
- 数字文房设计系统展示
请下载 zip 包,安装打开即可体验。
我用夸克网盘给你分享了「Journi-a…apk.zip」,点击链接或复制整段内容,打开「夸克APP」即可获取。
/~035a3ZLnsc~:/
链接:夸克网盘分享
提取码:n3ZM
四、TRAE 实践过程
开发环境
- IDE:TRAE IDE
- 后端:Cloudflare Workers(Hono + D1 + KV + R2 + Workers AI)
- 前端:Flutter 3.44.4(FVM 锁版本)+ Riverpod 2.0
- 状态管理:Riverpod 2.0
- 架构:Clean Architecture(Presentation / Domain / Data 三层分离)
开发流程
阶段 1:创意提案生成(TRAE Work)
用 TRAE Work 把"AI 驱动的人生意义发现平台"概念落地为完整创意提案 HTML,包含产品定位、8 大核心功能、设计系统、技术架构。
阶段 2:后端 API 开发(TRAE IDE)
- 用 TRAE IDE 搭建 Cloudflare Workers 后端骨架
- 实现 16 个数据库迁移(用户、条目、仪式、Vault、Widget Token、模型目录等)
- 实现 AI 推理服务(Workers AI + 自定义 Prompt 工程)
- 实现 OAuth(Apple / Google)、IAP、Turnstile、Widget Token 等完整后端
阶段 3:Flutter 客户端开发(TRAE IDE)
- Clean Architecture 三层目录结构搭建
- Riverpod 状态管理 + GoRouter 路由
- 核心功能模块开发:Capture / Discover / Ritual / Vault / Insights / Widget
- 多语言支持(中文 / English / Español / हिन्दी / العربية)
- 数字文房设计系统落地(Playfair Display + Source Serif 4 + Syne + Inter)
阶段 4:端侧 AI 集成(TRAE IDE)
- 从 llamadart + Qwen3.5 GGUF 迁移到 flutter_gemma + Gemma 4 LiteRT-LM
- 设备性能分档(nano / lite / full)自动选择模型
- GPU 优先推理 + KV-cache 溢出保护
- 端侧 AI 设置隐藏入口(特殊交互触发,重启后重置)
阶段 5:桌面 Widget 开发(TRAE IDE)
- iOS WidgetKit 实现 Echo / Mountain 双 Widget
- Android AppWidget 实现对应版本
- Widget Token JWT 鉴权(90 天有效 + SHA-256 哈希存储 + 可撤销)
- 数据序列化 sanitize(NSNull 崩溃修复、NaN/Infinity 归零、DateTime 转毫秒时间戳)
关键技术亮点
| 亮点 | 实现方式 |
|---|---|
| 双引擎 AI | 云端 Workers AI(深度解读) + 端侧 Gemma 4 LiteRT-LM(隐私推理) |
| SSE 流式响应 | Discover Meaning 打字机动画,降低感知延迟 |
| Voronoi 像素拼图 | 有机分区算法,避免机械网格感 |
| 32×16 LED 点阵引擎 | 自研 5×5 位图字体 + Canvas 像素渲染 |
| 隐私优先 | 图片仅本地存储 + 端侧 AI 推理选项 |
| 多语言 | 5 种语言全球化,i18n arb 文件管理 |
| 数字文房美学 | 四字体体系 + 三色美学 + 纸质质感 |
开发关键步骤截图
以下截图需在 TRAE IDE 中实际操作后补充,不少于 3 张。
截图 1:TRAE IDE 项目结构总览
截图 2:Discover Meaning AI Prompt 工程
截图 3:端侧 Gemma 4 LiteRT-LM 集成
关键任务对话 Session ID
以下 Session ID 需双击 TRAE IDE 对话头像复制,不少于 3 个。
- Session ID 1:
<!-- 357767383619975:6c6f61f52852f32957bbc4e613325dd2_6a3ca02a6f08f6a936e83369.6a3ca02a6f08f6a936e8336c.6a3ca02a6f08f6a936e8336a:TRAE Work CN.0.1.25.no_sid.no_ppe.T(2026/6/25 11:27:38) -->—— 端侧 LLM 从 Qwen3.5 迁移到 Gemma 4 LiteRT-LM 的完整任务 - Session ID 2:
<!-- 357767383619975:56e973d0bbf4a6daef82322c733e8286_6a3c89c06f08f6a936e82fda.6a3cc9886f08f6a936e834e9.6a3cc9886f08f6a936e834e7:TRAE Work CN.0.1.25.no_sid.no_ppe.T(2026/6/25 14:24:08)-->—— 后端 model_catalog 迁移到 Gemma 4 配置 + Turso DB 生产环境部署 - Session ID 3:
<!-- 357767383619975:e9c1d5fabba840f2c4b9f1af06508b1d_6a3f27166167be429c477cb8.6a3f30796167be429c477d50.6a3f30796167be429c477d4e:TRAE Work CN.0.1.25.no_sid.no_ppe.T(2026/6/27 10:07:53) -->—— GPU 优先推理 + 端侧 AI 设置隐藏入口实现 - Session ID 4:
<!-- 357767383619975:0a44ae4ba72f4d582bb455f9e0bfafad_6a426ddbef1d06d656992d22.6a45ab43dc8da68f06faf3a0.6a45ab43dc8da68f06faf39f:TRAE Work CN.0.1.25.no_sid.no_ppe.T(2026/7/2 08:05:24) -->—— iOS Widget NSNull 崩溃修复 + 数据 sanitize - Session ID 5:
<!-- 在此粘贴 Session ID -->—— Voronoi 像素拼图 + 中文星期标签渲染
五、踩坑记录与开发心得
踩坑 1:NDK 版本冲突
flutter_gemma 插件依赖的 jni 插件硬编码 NDK 版本 28.2.13676358,与已安装的 NDK r29 冲突。解决方案:下载精确版本 NDK 复制到 ~/Library/Android/sdk/ndk/28.2.13676358,并用 FVM 锁定 Flutter 3.44.4 避免后续漂移。
踩坑 2:iOS Widget NSNull 崩溃
home_widget iOS 插件在 NSUserDefaults 包含 NSNull 时崩溃。解决方案:所有 Widget 数据写入前 sanitize——null 转空字符串、DateTime 转毫秒时间戳、NaN/Infinity 转 0。iOS 读取时用 defaults.array(forKey:) / defaults.dictionary(forKey:) 而非 defaults.data(forKey:),再用 JSONSerialization 解码。
踩坑 3:云端图片上传违反隐私设计
初期实现把图片上传到 R2 云端,违反隐私优先设计原则。解决方案:完整迁移到本地存储,仅图片路径入库。
踩坑 4:GoRouterState 上下文错误
在 Widget 树构建过程中调用 GoRouter.of(context) 报错 “There is no GoRouterState above the current context”。解决方案:把路由调用移出 build / initState 生命周期,或用 Future(() {...}) 延迟到下一帧。
踩坑 5:Provider 在 Widget 构建中被修改
在生命周期方法中修改 Riverpod Provider 报 “Tried to modify a provider while the widget tree was building”。解决方案:把状态更新逻辑移到用户交互回调(如 onPressed),或用 Future 延迟执行。
六、项目结构
Journi/
├── journi_app/ # Flutter 客户端
│ ├── lib/
│ │ ├── application/ # Riverpod Providers(状态层)
│ │ ├── core/ # 配置 / 路由 / 主题 / 多语言
│ │ ├── data/ # 数据层(Repository + Service)
│ │ │ └── services/local_llm/ # 端侧 Gemma 4 LiteRT-LM
│ │ ├── domain/ # 领域实体
│ │ ├── presentation/ # UI 层(Screens + Widgets)
│ │ └── shared/ # 共享组件(LED Matrix 等)
│ ├── ios/ # iOS WidgetKit(Echo / Mountain)
│ └── android/ # Android AppWidget
├── journi-backend/ # Cloudflare Workers 后端
│ ├── migrations/ # 16 个 D1 数据库迁移
│ └── src/
│ ├── prompts/ # AI Prompt 工程(7 维度)
│ ├── routes/ # 15 个路由模块
│ └── services/ # 业务服务(AI / IAP / OAuth / Widget)
└── competition-registration/ # 参赛材料


