自己 / 团队介绍
个人参赛。
我是 StoryDad 爸爸故事的独立开发者,也是一个六岁孩子的爸爸。
白天在外奋斗赚钱,晚上哄娃睡觉。做这个产品的原因很简单——我发现每晚的"讲故事"是一件幸福但吃力的事。绘本买了一柜子,孩子听两遍就不想听了,自己讲几天,也没有精力持续下去了;网上找故事,主角永远叫"小明"“小红”,孩子听完没印象;想用自己的声音录下来,但加班到家孩子已经睡着了。
有一天哄睡时孩子说了一句"爸爸,我想听小兔点点的故事"——小兔点点是我随口编的角色。那一刻我意识到:孩子想要的不是某本名著绘本,而是"属于自己的故事",加上"爸爸的声音"。 而 AI 的出现恰好能把这两件事变成每天都能实现的日常。
本金基本0开发经验,没有ai之前不会任何开发,自从今年ai agent出来后,我也是第一时间学习研究,现在也可以利用ai做一些自己工作需要的东西出来。也感谢trae。
性格标签:一个想用技术让家庭生活更好一点的普通爸爸。
产品简介
是什么
StoryDad 爸爸故事是一款微信小程序,让家长输入一个主题(比如"老虎报恩"“学分享”),AI 就能在 5 分钟内生成一篇以自己孩子为主角的专属故事,还能配上绘本插画、用爸爸的声音朗读出来。不需要会写故事,不需要会画画,不需要会录音——选个主题就行,剩下的交给 AI。
未来爸爸故事将持续重磅升级–ai生成故事视频,创建一家人角色,一键带入故事视频,实现侵入式属于一家人的故事体验。
面向谁
1-9 岁孩子的家长。尤其适合:
-
加班爸爸 —— 到家孩子已睡,想陪却没机会
-
全职妈妈 —— 讲了一天嗓子哑了,晚上想让 AI 接个班
-
爷爷奶奶 —— 想陪孩子看书,但不知道讲什么、普通话也不太标准
-
不太会讲故事的家长 —— 买了绘本不知道怎么声情并茂地念
完整功能清单
| 模块 | 能做什么 | 给家长带来什么 |
|---|---|---|
| 宝贝档案 | 记录孩子昵称、年龄、喜好 | AI 生成的故事主角就是自己的孩子 |
| 故事创作 | 选一个主题,AI 自动写故事 | 不用自己编,每晚都有新故事 |
| 绘本生成 | AI 画 8-20 页插画绘本 | 不用买绘本,随时生成随时看 |
| 声音克隆 | 爸爸录 30 秒,永久克隆声音 | 加班不在家,孩子也能听到爸爸讲故事 |
| 系统音色 | 多种温柔音色可选 | 妈妈累了,让 AI 用好听的声音替你讲 |
| 广场社区 | 发布/阅读/点赞其他家庭的故事 | 看看别的家长在给孩子讲什么 |
| 精选故事 | 官方精选故事库 | 不想生成的时候,直接挑一篇读 |
| 签到赚币 | 每天签到送故事币 | 免费用户也能持续用 |
| Web 后台 | 全功能管理台 | 运营精选内容、管理用户、监控队列 |
用户的一天
Plain Text
晚上 9 点,孩子该睡觉了
→ 打开小程序,选一个主题"勇敢的小火苗"
→ AI 开始写故事(孩子去刷牙)
→ 3 分钟后故事写好了,主角叫"小兔点点"(就是我家娃喜欢的名字)
→ 点"生成绘本",AI 开始画插画
→ 点"听故事",选"爸爸的声音"
→ 孩子躺在床上,看着绘本,听着爸爸的声音讲故事
→ 安静入睡
爸爸还在地铁上。但孩子听到的,是爸爸在讲故事。
相比初赛 Demo 的升级
-
故事生成从"经常超时失败"到"稳定 5 分钟出稿":改为异步队列架构,突破小程序 60 秒超时限制
-
从"只有文字"到"完整绘本":打通了文字→分镜→角色一致性→多画风插画→单页重绘的全链路
-
新增声音克隆:30 秒注册爸爸声音,之后每个故事都能用爸爸的声音朗读
-
新增广场社区:家庭之间可以分享故事、互相点赞
-
完整会员与支付:接入微信支付、签到赚币、绘本配额
-
Web 后台全功能化:Creator 工作台、画风管理、队列监控等 8 个管理模块
-
累计修复 30+ Bug:从 Skyline 渲染兼容到数据库字段语义冲突,逐个打磨稳定
产品介绍截图:
产品演示视频
产品创作历程
灵感诞生
孩子那句"爸爸,我想听故事"是一切的起点。我意识到,孩子不在乎故事是不是名著,他们在乎的是——这个故事里有我认识的人,讲这个故事的爸爸的声音。
初赛 Demo
用 TRAE 3天搭出了 MVP:小程序首页 + 故事生成表单 + 后端 LLM 调用。能跑通,但微信 60 秒超时让生成频繁失败。
复赛演进中的几个关键坎
第一坎:60 秒超时 故事生成需要 100+ 秒(规划→草稿→质检→重写),小程序请求上限 60 秒。我坚持不砍质检流程(质量是底线),最终用"占位记录 + 队列异步 + 前端轮询"解决。后端立刻返回 story_id,前端每 3 秒查一次状态,5 分钟内完成。
第二坎:绘本角色一致性 最初每页独立生成,同一个角色每页长得不一样,孩子分不清。后来改成"先生成一张角色参考图,后续每页都参考它",终于一致了。但又遇到角色图和绘本页并发执行的时序冲突,最终用"角色 worker 完成后自动派发绘本任务 + 原子锁防重复"解决。
第三坎:签到天数永远是 1 测试发现连续签到和累计签到都恒为 1。追踪数据流后发现:前端把"连续天数"错误赋给了"累计天数"字段,sync 接口又把这个错误值反向写入后端,同时日期格式被转成 ISO 串导致每次签到都判为断签。修复涉及 4 处代码 + 历史数据修复 SQL,是项目里最绕的一个 Bug。
第四坎:Skyline 渲染引擎 小程序用 Skyline 引擎,很多 CSS 不支持(:active、-webkit-line-clamp),z-index 行为也和 WebView 不同,画风选择弹窗被遮罩盖住、ActionSheet 连续弹出被吞掉。一个个排查,一个个用兼容方案替代。
TRAE 实践过程
开发流程
整个项目100% 的代码通过 TRAE 协作产出。我的模式是:
-
在 TRAE 里描述需求,让 TRAE 先做"预修改分析"——读代码、找风险、给方案
-
我确认方案或调整方向
-
TRAE 执行修改,我做测试,然后报错信息发给TRAE,再次修改
-
在微信开发者工具里测试,把报错直接贴给 TRAE,TRAE 定位修复
作为一个带娃的普通爸爸,从0开始学,时间碎片化严重。TRAE 让我能在孩子睡后的 1-2 小时里高效推进,不用花时间在"学函数""查语法"上,把精力留给产品决策。
开发关键步骤截图
id:
4390817321465096:c528a05d6bc9dc9c1923dcb4181608aa_6a6206604cb7cd90ad5d01d1.6a68dc7c872928fb7969b85b.6a68dc7c872928fb7969b859:TRAE Work CN.0.1.43.no_sid.no_ppe.T(2026/7/29 00:44:44)
id:4390817321465096:98835b544e23e2a627b69b97869a8af4_6a6206604cb7cd90ad5d01d1.6a68db77872928fb7969b819.6a68db76872928fb7969b817:TRAE Work CN.0.1.43.no_sid.no_ppe.T(2026/7/29 00:40:23)
id:4390817321465096:8c7908cbfa106fa5aaa8aad26bbf0ad2_6a6206604cb7cd90ad5d01d1.6a68761c872928fb7969b6a6.6a68761c872928fb7969b6a4:TRAE Work CN.0.1.43.no_sid.no_ppe.T(2026/7/28 17:27:56)
id:
4390817321465096:9fa5805a755d8373d75871e23d409e15_6a6206604cb7cd90ad5d01d1.6a68711f872928fb7969b5b3.6a68711f872928fb7969b5b1:TRAE Work CN.0.1.43.no_sid.no_ppe.T(2026/7/28 17:06:39)
id:4390817321465096:33f8764118db4ac41dce778d2a7c3f39_6a6206604cb7cd90ad5d01d1.6a6877ce872928fb7969b716.6a6877ce872928fb7969b714:TRAE Work CN.0.1.43.no_sid.no_ppe.T(2026/7/28 17:35:10)
id:4390817321465096:98835b544e23e2a627b69b97869a8af4_6a6206604cb7cd90ad5d01d1.6a68db77872928fb7969b819.6a68db76872928fb7969b817:TRAE Work CN.0.1.43.no_sid.no_ppe.T(2026/7/29 00:40:23)
id:4390817321465096:c7c9ecb380363bb098febc82bd0f5703_6a6206604cb7cd90ad5d01d1.6a696d887cc21930eaea474d.6a696d877cc21930eaea474b:TRAE Work CN.0.1.43.no_sid.no_ppe.T(2026/7/29 11:03:36)
id :4390817321465096:037c82b9873b5a68c04c82c92d0fc275_6a6206604cb7cd90ad5d01d1.6a69ebd3f4ab9c186eb737c8.6a69ebd2f4ab9c186eb737c6:TRAE Work CN.0.1.43.no_sid.no_ppe.T(2026/7/29 20:02:27)
技术方案分享
技术栈
| 层 | 技术 |
|---|---|
| 小程序 | 微信小程序 + Skyline 渲染引擎 |
| Web 前端 | Next.js 16 + React 19 + TailwindCSS 4 |
| Web 后端 | Next.js API Routes + Prisma ORM |
| 队列 | BullMQ + Redis(故事/绘本/语音/头像 4 个队列) |
| 数据库 | MySQL 8.0(utf8mb4_unicode_ci) |
| AI 能力 | LLM(故事生成)+ DashScope(声音克隆 TTS)+LLM 文生图(绘本插画) |
| 存储 | 阿里云 OSS |
| 支付 | 微信支付 |
关键实现
-
异步生成:占位记录 + 队列 + 轮询,突破 60 秒超时
-
角色一致性:先出角色参考图,后续每页参考它生成
-
声音克隆:30 秒注册 → voice_id → TTS 合成时强制走克隆
-
故事质检:规划→草稿→语义质检→重写,保证质量
-
签到数据解耦:切断 sync 反向写入,签到真源唯一化为事务
商业化与社会价值
爸爸故事小程序使命就是,让每个孩子童年都能获得陪伴,每个父母都能给孩子讲出好故事
这是我做 StoryDad 爸爸故事初衷
"给孩子讲一个好故事"听起来简单,实际上是一种能力——你要会选书、会编故事、会声情并茂地朗读,还得有时间。很多家长不是不爱孩子,而是真的做不到:
-
爸爸加班晚归,到家孩子睡了,想讲没机会
-
妈妈带娃一整天,嗓子哑了,晚上实在讲不动
-
爷爷奶奶想陪孩子看书,但不知道讲什么,老故事讲了五十遍孩子不想听了
-
有些家长不太会表达,干巴巴念两页,孩子就跑开了
AI的出现 把这些门槛全部抹平了。
不需要会编故事——选个主题,AI 帮你写。不需要会画画——AI 帮你画绘本。不需要会声情并茂地朗读——AI 用自然语音帮你读。不需要声音好听——克隆你的声音,孩子听到的就是"爸爸在讲"。0 学习成本,会选主题就行。
我特别在意爷爷奶奶这个群体。 中国太多家庭是老人带娃,他们有满满的爱心,却常常因为"不知道讲什么"“普通话不标准"而手足无措。有了 StoryDad爸爸故事,爷爷奶奶只需要点一下主题,AI 就能生成适合孩子年龄的故事、画好插画、用标准声音朗读。爷爷奶奶终于可以自信地陪孙子孙女看绘本了,不用再说"爷爷不会讲,等你爸妈回来吧”。
还有爸爸群体。 声音克隆是整个产品里最有温度的功能。爸爸录一次(30 秒),之后每天的故事都能用爸爸的声音播放。孩子睡前听到的是爸爸在讲故事,哪怕爸爸还在回家的地铁上。这不是用 AI 替代陪伴,而是让陪伴不再被时间和距离偷走。
以前,写故事是童书作家的专利,画绘本是插画师的专利,录有声绘本是配音演员的专利。现在,每一个普通的爸爸、妈妈、爷爷、奶奶,都能通过 AI 给自己的孩子创作专属的故事和绘本。不需要学编程,不需要懂 AI,不需要任何基础——点点点就够了。
这就是 AI 应该做的事:不是替代人,而是让每个普通人都能做到以前只有专业人士才能做的事。让技术成为家庭的温暖工具,而不是极客的玩具。
商业化模式
-
免费层: 每日 3 篇免费故事 + 签到赚故事币
-
Pro 会员: 无限故事 + 绘本配额 + 声音克隆
-
单片购买: 故事币兑换额外绘本
产品迭代规划
-
视频绘本故事:视频绘本故事:用 AI 把一家人都"画"进绘本里——爸爸是勇敢的骑士,妈妈是温柔的仙子,孩子就是故事的主角。全家人化身绘本角色,沉浸式"演"一个属于自己的绘本故事,让睡前时光变成一场温暖的家庭冒险。
-
多语言故事:英文故事生成,双语睡前阅读
-
系列连载:同一主角的系列故事,角色成长跨篇延续
-
家庭共享:爸爸妈妈各自克隆声音,孩子选"今晚听谁讲"
-
阅读报告:按月生成孩子的阅读主题分布,帮家长发现兴趣
本作品 100% 使用 TRAE IDE 协作开发。从一个爸爸的睡前烦恼,到一个完整的亲子故事平台,每一步都是和 TRAE 一起走的。















