阅读视图
「KN.phoenix」终极笔记软件需求
20240629,v0.1,本文处于非常初级的阶段,完成度 10%
一、介绍
用过许多笔记软件,从最初的 mbBase、网博士、WizNote/CyberArticle/网文快捕、OneNote、Pocket、EverNote/印象笔记,到现代的 Joplin、Obsidian、语雀、飞书、Logseq、Notion,到后 Notion 时代的一些 Web 的、AI 的 SaaS。还用过一段时间 Org mode。相似的是,凡软件都有生命周期,商业成功的血条长一些,相比来说,开源的活得更久。古话说“以利合者,利尽则散”,一旦公司不给员工发薪,自然也没有新的研发和高水平运维,仅仅维持软件基础生命体征。从外界看来,就是这个软件进入了维护期。
最后,在不定的某一天,痛苦的事情发生了,你不得不迁移数据到新玩具中,此时,开源体现出优势,它的数据和程序至少是开放的,就算官方没有提供迁移方法,懂软件和开源数据库的人还可以 DIY 抢救一下,从这种意义上说,开源是相对安全的。但也许有一个处理周期,比如要先写出数据迁移的工具或脚本,在此之前,如果需要访问数据,而它是个 SaaS,前些天创始人被毕业了,核心运维也提桶跑了,那么诸位菩萨,剩下你能做的就是多求菩萨保佑。
所以,我对一个笔记软件有什么需求,需求就是,笔记软件的每行代码都源自我手它完全按预期运行,所以只能 DIY 了。
1. 目标收益
1)一个不必再换掉的笔记软件
2)笔记者对笔记有最高掌控权
2. 目标用户
1)我
2)朋友
3. 痛点和用途
痛点
1)大多笔记软件生命周期很短,烦人的“搬家游戏”
2)笔记收集
3)笔记发布
用途
4. 范围
1)管理笔记
2)收集笔记
3)发布笔记
5. 定义
1)本地:Local
2)远程:Remote
二、概述
1. 用户需要
1)满足余生记笔记的需求
2)与时俱进
3)做时间的朋友
2. 假设和依赖
假设有足够时间投入。
零特殊依赖。
三、功能特性和系统需求
1. 功能需求
1)管理笔记
2)收集笔记
3)发布笔记
REQ1.支持笔记从本地发布到远程。
用户需要一个界面,选择笔记和待发布平台,通过一个步骤完成从本地发布到远程。
REQ2.显示远程笔记。
用户需要一个界面看远程笔记。
- 旁注
- 目录
- 显示页面进度
- 容易转发的标题
- 专栏
- 对话
- 具有出处的代码块
- 外部链接带有标记
- 不同外链采用不同标记
- 链接预览
- 链接到引用
2. 外部接口需求
3. 系统特性
1)本地优先
2)支持 Windows 和 macOS,支持 Windows 10 及以上系统,支持 32 位系统
4. 非功能需求
1)操作响应 1s 以内。
「KN.phoenix」构想
「KN.phoenix」是什么
KN 是这个笔记软件的名字,可以是 knowledge、keep noting、keep neat、key notes,或者也许是 kunnect nimble,而 phoenix 是初始版本代号。
正如小王子说,不要随便给事物命名,在五年前的某个温暖潮湿的雨后下午,我与创业好友在工作室进行“车库开发”。
由于当时正致力于一款产品的社媒运营,我提出构建一种“内容由个人掌握、书写后可多地发布”的软件概念后,我们进行了头脑风暴。
最终,由于未找到太好的商业模式,纸上谈兵而未得不败之道。但我用一晚构建了一个 Demo:

孙子兵法曰:庙算不胜者,得算少也。也许是预期过于宏大,而显得如何筹备都觉不足。
但在我最近看到一些持续更新的笔记爱好者后,一些关于笔记软件的构想产生了。
终极笔记软件的思考
终极是啥
终极,就是人生终点甚至更长。人生剩余时间都可以使用它,到你离开世界后,你的亲人、朋友依然可以继续使用,并受益于它。
终极是一种更长的长期主义。
笔记软件
简单来说,每个人都做过笔记,但少部分人做过电子笔记。
要把笔记软件说透,要先研究笔记,包括笔记的历史、笔记方法论,再研究笔记软件发展脉络,再进行现有笔记软件市场洞察。
然后,就可以确定笔记软件的人群、用例,可以再从下至上发现高光点,再从上至下确定基本需求。
然后就是 do,just do it,对个人来说,稍微估算可谓一个中型规模项目。
基本需求
- 能记、能查、能看笔记。
- 能选择性发布笔记。
- 原始笔记由我控制。
高光需求
- 功能:能记、能查、能看、能转移笔记
- 记:
- 从记笔记入口打开软件后,可直接开始记笔记
- 快捷捕获数据,支持各形态和格式的数据,数据作为对象可外链、可存回本地
- 能翻译指定多语
- 能被动存档版本
- 写作提示
- 自动摘要(AI可以辅助的,我不拒绝;但我基本拒绝 AI 生成笔记内容)
- 离线可写
- 查:
- 支持各分类法查:除分类、标签、笔记基本属性外,支持自定义元数据。
- 自动索引封闭格式
- 能查存档版本
- 看:
- 本地看
- 发布预览
- 逐句注释、评论
- 远程评论同步
- 发:
- 能发布到 Web
- 能发布预览
- 能发布到多个平台
- 能按定义自动发布
- 能同步新版本,同步前主动增加存档版本
- 移:
- 笔记可导入
- 笔记可导出
- 记:
- 性能:
- 本地优先
- 支持 Web
- 安全设计:
- 不依赖软件本身
- 不设数据门槛
- 本地出现灾难事件,可笔记重生。
以下是发布过程。
发布过程我去!这不是 wordpress 吗?
我仔细看了看这需求,除了性能,这不就是大部分 wordpress 实现的吗?
是的,除了1和2,wordpress 确实已大部分具备:
- UI 响应速度
- 可发布性
但仔细看,还有些细节:
- 本地不可记笔记
- 存为草稿算私有化,但毕竟在线上,安全程度有限
- 存档版本过多
- 无法逐句注释和评论
- 弊端在有点固定成本 PHP + MySQL Server,年均几百。
- 我希望写时紧凑,阅读时宽松。我非常不喜欢写作时使用太大的字体,包括标题与正文,我希望在一屏中,内容有紧凑的行距和合理的字间距,可以呈现更高的信息密度;但阅读方面,我还是挺喜欢 WP 的版式设计,大字体赏心悦目,段间距宽,有诗意和留白,可让人更轻松的思考。
Wait... 不是官方有 Wasm 的 WP 吗?哇,泰库辣~,然后呢,然后就没有了。
写作免费,支持发布到任何平台
这个工具是做给自己、朋友。初步确定为先实现 1,然后是 3,然后是 2。
- 能发布到所有静态博客
- 能发布到主流博客
- 能发布到 Tiddly Wiki
- 能发布到任何自定义平台
开发周期
将在后续《「Phoenix」终极笔记软件需求》中详评,现在拍脑袋估算为一年。