我的知识库

最新更新:

我在这里写了很多理由为什么用这套技术栈搭建一个离线的个人知识库, 最终只满足了个人数据自托管的需求, 而其它方面, 有一个更好, 更便捷的方案: Github Issues, 强烈推荐你们试一下(当然你要花点工夫去做一个将Github Issues自动部署到静态网站的Actions).

原因是不久前, 著名程序员 Simon Willison(Django 框架的作者)提出,GitHub Issues(几乎)是世界最好的笔记应用。 alt text 我觉得, 深以为然, LOL.

============== 下面是之前阐述的使用这套技术栈搭建个人知识库的理由:

选择一个合适的个人知识库是很困难的, 就我个人而言, 至少要满足以下需求:

  1. 支持Markdown编辑文档, 以及完整的Latex支持, 方便的图片粘贴
  2. 能结构化组织你的内容, 并支持双链, 标签, 知识图谱等功能, 有便捷的检索功能
  3. 能互联网访问, 方便分享
  4. 支持知识的同步/协作/共享(其实就是能多处编辑的意思)
  5. 备份和迁移方便
  6. 最好是自托管

我现在使用的是Dendron, 记录几乎所有笔记, 但是因为写过一段时间博客, 也有十来万字了, 并没有打算合并这些内容, 然后, 一些只言片语和随记、摘抄,我使用的是浮墨笔记, 当然记录一两句话这种, Twitter/微博/朋友圈都能做到, 但flomo这是纯个人的, 没有社交功能, 更纯粹.

我现在使用Dendron, 并不是因为它有多好, 也并不是因为很多笔记工具的深度用户, 比如: alt text 然后发现什么很多不足, 然后选择了它, 而是恰好碰到了它, 然后满足了我大部分需求, 我可以简单说说:

  1. 它是一个VSCode插件, 所以支持MarkdownLatex是基操, 然后提供了一些快捷键, 能直接在编辑器中插入剪贴板中的图片, 知识库中的其它资源等, 基本满足了大多数编辑场景
    • 特别地, 因为只是一个插件, 所以并不需要多安装一个软件, 低门槛让我选择尝试一下它, 结果就用上了
  2. 它支持双链, 标签, 图谱等功能, 并且支持简单的结构化配置, 做一个最简单的知识管理系统基础功能是有的
    • 配置文件不学也可以, Dendron支持基础的基于文件夹的结构
  3. 所有笔记就是Markdown文件, 使用Git来管理笔记文件
    • 所以不需要考虑备份和迁移了, 并且支持多人协作, 多端同步也不是问题(基操)
    • 很多流行软件最终都得使用它们的云服务, 在经过N次博客迁移后, 我觉得数据在自己手里(github也算)才是根本
  4. 至此, 它还只是一个本地文件的编辑器, 但是, 它自带个命令行工具, 能让你把整套笔记发布成静态网站(基于Next.Js)
    • 再把这套流程配置到Vercel, 这样每次push到Git, 都会自动生成新的静态页面, 并发布到公网(CI基操)
    • 网站其实做得很简陋, 幸亏基础功能都有:
      • 有方便的检索功能, 直接搜关键字是文件名检索, 加?前缀搜是全文检索(相当快)
      • 有反链功能, 引用过当前主题内容的页面会集中列出来
      • 基本的三栏布局, 左边是目录, 右边是内容, 中间是目录树

有什么不足呢?

  1. 它并不能很好地支持全设备编辑(比如手机和平板, 既没有那么大空间, 也没有VS和Git), 但客观上把你的创作限制在了电脑前, 需要认真地编辑内容, 而不是随时掏出来记点灵感啥的.
  2. 生成的静态网站没有主题机制, 但其实这种纯前端的问题, 介意的话其实是可以自己写一个的.
  3. 它的Tag功能在网站上还没实现, 这是个大问题.
  4. 它的知识图谱功能只能在VSCode中查看, 并且也不是特别酷炫, 聊胜于无的感觉

基本上商用软件为了不丢掉移动端的客户, 必须支持移动端能方便地编辑, 那样就锁死了要么是独立app, 要么是网页版, 然后还锁死了云服务, 不然你的数据怎么同步. Dendron直接编辑物理文件, 相当于直接放弃了移动端, 但对于码龙来说, Git一条龙才是最终的归宿, 所以其实一点问题也没有, 而且还解决了云服务绑定的问题.

P.S 如果对Dendron感兴趣,可点击下方的Quickstart子页面了解。


Children
  1. Quickstart
  2. AI
  3. Coding
  4. Coding Languages
  5. Hobbies
  6. Math
  7. Miscellaneous
  8. Reading

Backlinks