升级打怪

Dayfold
 
Dayfold开发日记(1) - 启始

开发Dayfold的开发有一段时间了,目前主要功能都有,还在继续打磨细节。功能如下:

  • 创建笔记本,增删改查
  • 创建日记,增删改查
  • 编辑日记,添加图片、tag、心情、视频
  • 查看日记的方式有多种:图片瀑布流、日历行程和地图模式
  • 删除日记时,支持一些简单的手势功能;
  • 支持iCloud Sync(开发中)
  • 支持Memories(开发中)
  • 支持切换Theme,有三种配色
  • 支持Notifications(开发中)
  • 支持Privacy & Face ID(基本完成,后续需要做差异化)
  • 支持Hidden Notebook(开发中)
  • 支持数据统计
  • 支持回收站
  • 支持markdown语法(还不完善)

陆陆续续开发有5个多月,期间有蛮多收获。

为什么选择Swift

在IT行业干了10多年,专职于前端领域,对于后端编程语言基本没兴趣,不喜欢与枯燥的数据库和麻木不仁的CURD打交道,不是看不起或者有偏见,纯属喜好。

就行业发展态势、职业发展天花板和就业形势来说,做后端要活得更久一点。

但是,对于漂亮的UI和感性的交互,深深为之着迷,不愿自拔。

Swift 语言发展也有一段时间,相信在苹果的带领下,完全取代Object C不是问题。就目前来,iOS 生态中已经有很多优秀的 Swift 应用。

vibe coding 是什么

vibe coding,又被称为氛围编程。简单来说,是一种依赖AI的编程方式。不需要开发者有特别厉害的代码能力和编程技巧,只需要一点编程思维和产品设计能力即可。

vide coding 的过程,自己既是开发、产品、测试,也是用户。需要自己写产品需求和开发设计文档,也需要自己调试代码和功能测试,总之,个人即团队。

为何开发笔记应用

其实一开始,我也不知道开发什么。只是觉得vibe coding的时代需要做些有趣的事情,才不会留下遗憾。

事实上,我用过多款笔记应用:Evernote / OneNote / DayOne / Obsidian,包括代码编辑器 notepad ++ / Sublime / VS Code 都可以做笔记。差点忘了,还有 iPhone 中的备忘录,以及最新出现的无边记。

但是它们这些产品给我的感觉,不是笔记。而是记录、草稿,或者是资料库,没有一点笔记该有的样子。首先应该有笔记本,然后才有一页一页的笔记,每一页都有自己珍惜的文字和记忆,这些虽然算不上财富,但也是非常私密且有纪念意义的、不可取代的珍藏。

因此,我想做一款有质感、轻松记录和值得回忆,阅读后能会心一笑的笔记应用。

开发遇到的那些事

首先我要感谢以下这些优秀的应用:

  • Hardcover
  • DayOne
  • 苹果备忘录

Hardcover,UI设计非常精致,整体风格别具一格。

DayOne,属于全能型,面面俱到,功能非常丰富。

苹果备忘录,非常简洁,有很多灵动的交互。


Dayfold 这个名称来自ChatGPT,翻译成中文“Dayfold(折叠一天)”。

4D9ABA25-6203-479F-A368-098A4D907B66

由于应用开头是字母D,通过Google AI Studio生成icon,然后再追加了扁平化设计,变成了现在的样子。

6A4BE1B2-D4AB-447D-BF11-C5939FF5BAFD

Dayfold 的主页和侧边栏设计参考 Hardcover,精美的封面设计,让人看了爱不释手,侧边栏功能,清爽易用。

1871B6DC-DCA9-4272-A22A-FE349303183C FC708EFA-D2DA-42D4-8E60-70DE91066130

Privacy & Face ID 和回收站功能,参考 DayOne,简洁实用。

2ABA97F5-DB68-4019-9019-3FD905CCDBAD BAD2BC21-42EA-4A13-BAAD-8C2F13E900B7

日记编辑器 大部分参考苹果备忘录,功能丰富,但不混乱。

AB239177-6B84-493F-8F65-A55014BD9C06

在网络上找到以下资料和代码库:

还有视频,


数据统计的功能,本来想简单做做,但看了 DayOne 的UI设计后,决心重新设计,
借鉴了 GitHub 的 Contribution Graph

然后在Stitch中生成,

3E75CDB6-2009-42B9-861F-DF3C67C9F379

最终效果如下,

CC2906AD-34D9-41E8-BE74-1A984D5758D1

另外还参考了2个开源项目:


情绪波(Emotion Wave)

88AAF062-73F9-4181-9949-746071FF09F5

一种模仿 GitHub 提交记录图(Contribution Graph)的视觉化情绪追踪工具。它通过不同深浅的颜色方块来代表你每天的心情指数,让你在年终或月底时,能够像程序员看代码提交量一样,一目了然地回顾自己全年的心理健康轨迹。

设计如下,

  • 12 个情绪及 Energy 数值
  • 0~100 能量体系
  • Emotion Wave 曲线设计
  • Emoji 节点设计
  • 情绪分类
05B823C4-749C-41CB-A3A6-90335304B110

最开始,是参考五线谱,但觉得太复杂,改为了波浪线……

采用12个情绪也是有原因的,参考了音乐里面的“十二平均律”。

另外借鉴了:


总之,Dayfold 能顺利开发,离不开整个AI生态系统、丰富的笔记类应用市场、个人实施能力和审美。