【生活娱乐赛道】Journi — AI 驱动的人生意义发现平台Demo

【生活娱乐】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 应该是引路人而非工具。

我观察到一个现象:现代人每天都在产生大量生活碎片——朋友圈动态、备忘录、相册截图、聊天记录,却从未真正"读懂"自己。日记写了就忘,事件之间没有关联,成长看不见轨迹。我们记录了人生,却丢失了意义。

想解决的问题

  1. 传统日记 App 只"存"不"懂":Day One、格志日记只负责存储,用户记完依然迷茫
  2. AI 工具能聊天却无法构建长期成长认知:ChatGPT、豆包能回答问题,但没有你的历史数据,每次对话都是"失忆"的
  3. 记录难以坚持:缺乏即时反馈和奖励机制,写日记变成负担
  4. 成长看不见轨迹:散落的记录无法形成认知体系
  5. 现有产品过度社交化:朋友圈、小红书鼓励表演,而非真实的自我对话
  6. 隐私焦虑:云端 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 点阵屏动态展示
  • 数字文房设计系统展示

:package: 请下载 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 文件管理
数字文房美学 四字体体系 + 三色美学 + 纸质质感

开发关键步骤截图

:warning: 以下截图需在 TRAE IDE 中实际操作后补充,不少于 3 张。

截图 1:TRAE IDE 项目结构总览

截图 2:Discover Meaning AI Prompt 工程

截图 3:端侧 Gemma 4 LiteRT-LM 集成

关键任务对话 Session ID

:warning: 以下 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/    # 参赛材料

附:报名帖链接

我看完这个项目后,比较喜欢你们把一条日记拆成成长、哲学、历史、文学、电影、心理学、未来这 7 个意义解读维度,因为它解决的不是“把今天发生了什么存下来”,而是帮用户从碎片事件里看见自己的长期叙事和成长线索。
小建议:可以在帖子开头补一个评委快速体验路径,比如“观看视频预览 → 下载 APK → 新建一条记录 → 点击 Discover Meaning 查看 7 维解读 → 收藏到 Vault → 查看 Weekly Ritual 像素拼图”,同时说明目前没有 Web 在线版,这样评委能更快看懂它从记录到意义沉淀的完整价值。
我们也在生活娱乐赛道做了《衍境》,偏互动影游创作系统,欢迎来互评,觉得还行的话也帮忙点个票:【生活娱乐赛道】衍境 Demo:EvoMap 驱动的互动影游智能体创作系统