程序聚合 软件案例 FocusTrap - 赛博朋克风格的专注力管理,App这是一款融合了游戏化元素和 AI 人格系统的专注力管理应用,采用 SwiftUI + SwiftData 构建。-FocusTrap

FocusTrap - 赛博朋克风格的专注力管理,App这是一款融合了游戏化元素和 AI 人格系统的专注力管理应用,采用 SwiftUI + SwiftData 构建。-FocusTrap

2026-01-02 18:00:20
行业:生活服务
载体:IOS APP
技术:Combine、Core Data、Swift Package Manager、SwiftUI

业务和功能介绍

1. 立项背景和目标
FocusTrap 是一款面向深度工作者的专注力管理应用,旨在解决现代人手机成瘾、注意力分散的问题。区别于传统番茄钟的冰冷计时器,本项目通过赛博朋克视觉风格和 AI 人格陪伴系统,将专注过程游戏化,让用户在沉浸式体验中培养专注习惯。目标用户为学生、程序员、创作者等需要长时间深度工作的群体。

2. 核心功能模块
专注计时系统:支持倒计时和自由计时双模式,可设置工作/学习/健身/休息等任务类别,配合白噪音场景(海滩、森林、雨声等)营造沉浸氛围。

屏幕时间管控:集成 iOS FamilyControls API,专注期间可屏蔽指定应用,支持白名单管理和紧急解锁机制,从系统层面阻断干扰。

AI 人格系统:内置 Zero、LuXiao、Thea 等多个 AI 角色,每个角色拥有独特性格和对话风格。通过好感度系统,用户专注表现会影响角色态度,解锁更多互动内容。

战报与数据分析:自动生成每日战术报告,包含专注时长、任务分布、心流评级(S/A/B/C)、专注 vs 娱乐时间对比等可视化数据,支持导出分享。

3. 业务流程
用户启动应用 → 选择 AI 人格 → 创建任务指令(或自由模式)→ 开始专注 → 系统屏蔽干扰应用 → AI 实时对话陪伴 → 完成/中断专注 → 获得经验值和好感度变化 → 查看战报分析 → 解锁新场景/角色内容。中途离开应用会触发"逃跑惩罚"机制,AI 会根据角色性格给出不同反应。

项目实现

1. 整体架构和设计思路
项目采用 SwiftUI + MVVM 架构,分为 Views(视图层)、Services(业务逻辑层)、Modals(数据模型层)三层。数据持久化使用 SwiftData 框架,管理 FocusSession、DailyReport、TaskDirective 三个核心实体。状态管理通过 @StateObject 和 @ObservedObject 实现响应式更新,AppState 作为全局状态容器管理场景切换、屏蔽状态等跨页面数据。

UI 组件采用原子化设计,Components 目录包含 30+ 可复用组件(如 BreathingGlow 呼吸光效、RadarChartView 雷达图、CyberBarcodeView 条形码动画等),通过组合构建复杂界面。屏幕时间管控集成 FamilyControls 框架,RealBlockingManager 封装授权请求和应用屏蔽逻辑。

2. 负责模块和结果
AI 对话系统:设计 TheaterDialogueManager 剧场式对话管理器,支持多幕剧本播放。为 Zero、LuXiao、Thea 三个角色编写 500+ 条差异化台词,覆盖问候、鼓励、逃跑惩罚、完成庆祝等 12 种场景触发器。通过好感度阶段(1-5 级)动态调整语气风格。

战报系统:实现 TacticalReportView 战术报告页,包含能量环、任务甜甜圈图、赛博条形码、战斗天平等可视化组件。TacticalMetricsCalculator 负责计算心流评级(基于中断频率)、战斗结果(专注/娱乐时间比)等指标。支持 ImageExporter 导出为分享图片。

属性测试:编写 15+ 个 Property-Based Tests,覆盖对话脚本格式校验、时长格式化、状态序列化往返等核心逻辑。

3. 遇到的难点和解决方案
FamilyControls 授权时序问题:首次启动时授权弹窗与 UI 渲染竞争导致崩溃。解决方案:将授权请求移至 .task 修饰符中异步执行,并添加授权状态检查防止重复请求。

SwiftUI 编译超时:ContentView 超过 1200 行导致类型推断超时。解决方案:将 MainActionButton、DirectiveHubView 等复杂组件提取为独立文件,使用 @ViewBuilder 拆分条件渲染逻辑。

对话脚本维护困难:多角色多场景台词散落各处难以管理。解决方案:设计统一的 TheaterScript 协议,每个角色独立 Scripts 文件,通过 Property-Based Testing 自动校验格式一致性。

示例图片视频


Xuguoan
30天前活跃
方向: 前端-Web前端、后端-Java、
交付率:100.00%
相似推荐
万能水印相机打卡
本项目为外勤工作场景打造的水印相机工具,旨在解决传统照片无时间、地点、人员信息,导致考勤、工程验收、巡检记录无法溯源、易篡改的问题。 业务背景覆盖建筑施工、物业巡检、物流配送、环卫检查、外勤打卡等行业,用户需要快速拍摄带可篡改水印的现场照片,作为工作留痕与合规凭证,提升管理效率与数据可信度。
直播平台-嗨播谷
一站式短视频生态APP全部开发完成,集内容浏览、视频创作、直播带货、流量分润于一体。完善创作者激励、商家入驻、订单交易系统,适配多端流畅运行,依托智能分发机制高效引流,为个人创作者与商家提供完整流量变现渠道。
Go+FFmpeg 抖音财经股票指标视频自动化生成系统
一、项目简介 本人自1993年接触证券市场,2004年尝试用PHP开发自动化指标筛选程序,因并发性能限制,批量数据运算耗时过长。2015年转向Go语言,依托原生并发模型,将运算耗时由半小时优化至1分钟内,期间对比Python、Julia等语言后,最终选定Go为主力开发语言。 2025年启动本项目:基于自研股票指标函数体系,搭建财经短视频自动化流水线,将量化指标可视化内容批量生成视频并适配抖音平台分发标准。 技术迭代上,初期采用fogleman/gg生成PNG图片序列,再由FFmpeg合成视频。经持续优化,现绝大部分素材渲染直接交由FFmpeg完成,仅在FFmpeg耗时过高、分辨率无法满足需求时,回退使用GG生成静态图片。整套系统已实现数据解析、图表渲染、视频合成一站式自动化。 二、业务功能 批量指标运算:批量读取量化数据,自动运算生成股票指标信号。 数据可视化渲染:支持FFmpeg滤镜实时绘图,兼容GG静态PNG绘图兜底方案。 短视频自动合成:按平台规范自动合成视频,适配抖音等主流短视频平台分辨率与码率要求。 全流程自动化调度:从数据到视频全链路自动化,支持持续产出可视化素材。 智能渲染链路切换:根据耗时、画质需求,自动选择最优渲染方案(FFmpeg主链路/GG兜底)。 三、技术栈 Go、FFmpeg、fogleman/gg、股票量化接口、自动化调度脚本
基于多模态与大模型的短视频智能分析 Agent 系统
针对短视频平台内容爆炸式增长带来的推荐精准度不足、用户理解粗粒度等问题,设计并实现一个融合多模态理解与大语言模型决策能力的智能 Agent 系统,实现视频内容自动分类与动态用户画像构建,支撑个性化推荐、广告投放与内容治理等核心业务。 技术栈:Python, YOLOv8, Whisper, Qwen-VL, LangChain, Kafka, Flink, Milvus, Neo4j, FastAPI, Docker, Kubernetes
触发式自动讲解系统-循位智讲
场景触发式讲解系统是一款面向线下实体场景的自动语音导览应用。它通过持续追踪移动设备的 GPS 位置,在设备靠近预设的讲解点位时自动播放对应的语音讲解音频,无需人工干预,实现"人走到哪里,讲解跟到哪里"的沉浸式导览体验。
帮助文档   Copyright @ 2021-2024 程聚宝 | 浙ICP备2021014372号
人工客服