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 以内。