




















Tauri 跨端笔记实战项目是基于 Notegen 开源项目,本系列深度解析如何运用Tauri框架开发跨平台AI笔记应用。涵盖核心技术选型、架构设计、典型场景开发及常见问题解决方案,通过代码级演示带您掌握集成AI能力的全流程开发技巧。
你可以通过本系列教程跟随我逐步搭建起一款跨端的笔记应用,也可以通过 NoteGen 源码 来独立学习。
本文收录于《Tauri 开源日记》专栏,主要记录使用 Tauri 框架时的开发经验和避坑指南。
NoteGen 应用截图:


大家好,我是 codexu。从今天开始,我将撰写一个关于 Tauri 跨端开发的系列文章,分享我在开发笔记 APP 过程中所采用技术和遇到的问题。
我开发的笔记 APP 起名为 NoteGen,“Gen” 的含义是生成,目前还处于 alpha 阶段,PC 端已经实现了核心功能,大家可以自行下载试用,完全免费,这里不对软件进行过多的介绍,有兴趣的伙伴可以进入 Github 了解。
为什么这么想不开做一个独立开发三件套之一的笔记呢?首先我不是个独立开发者,不指望用这个赚钱,另一方面我只是想为写作寻求一些灵感和案例,因为我之前用 Tauri 开发过一个小工具,并撰写了一篇文章《零 Rust 基础前端直接上手 Tauri 开发一个小工具》,收获了不少点赞。目前,Tauri 2.0 已经发布了正式版,并且移动端开发,因此我希望能进一步深入研究 Tauri,并计划开发一个更加复杂的软件。
我偶尔会写几篇技术文章,总结一下工作中的经验,或者记录一些有趣的技术。在这个过程中,我一直没有找到一款适合自己的笔记,平时可能就在 VSCode 中进行写作。因此,我萌生了自己造轮想法。以下是我对笔记 APP 的痛点总结:
按照上述的痛点,我进行了以下的需求分析:
为了快速记录而不影响思路,我决定使用截图的方式,只需要快捷键和框选记录内容两步操作即可。随后交给 APP 解决后续的工作(后台进行),将截图保存,进行 OCR 识别,使用 ChatGPT 生成截图的描述(为了方便用户识别截图内容),此时的识别内容几乎无法使用,因为其中包含了很多识别错误的特殊符号,没有格式,不方便阅读,不过没关系,后续在记录完成后,整理文章时,ChatGPT 可以将这些难以阅读的文字帮我们整理好。
想要免费又安全地存放笔记文件,我唯一想到的方式就是借用 GitHub 仓库存放。很多小伙伴也是这样存放自己的笔记,而且还可以顺便生成博客。然而,这种方式的一个不便之处在于需要在本地安装 Git,并且需要使用相应的编辑器。而在端上,操作则更显繁琐。因此,我通过 GitHub Rest API 实现了文件的同步,这样一来,多端同步也变得轻松可行。此外,这种方法天生支持数据的回滚,极大地方便了笔记的管理和保存。
这些提交记录的 commit message 也适用 AI 生成的。
题外话,虽然我家里弄了一台 NAS,但我仍然无法完全信任的安全性,我更倾向于 Github 为主,Nas 为辅去同步 Github 仓库。
有些图床同样需要付费,并且依赖第三方软件进行上传,用户不能直接从笔记内部进行上传。在这样的情况下,我又想到了使用 GitHub 图床。虽然它需要公开仓库,但合 jsdelivr 加速,依然能够获得不错的体验,最重要的是这一切都是免费的。
当然,在使用图床时无需手动上传,截图时可以实现自动上传至图床。同时,在写作时可以方便地手动插入或整理自动上传的图片到笔记。
在生产代码方面,GitHub Copilot 或 Cursor 已经证明了 AI 在编程方面的非常有效,在写代码时已经完全离不开。通过代码的上下文和注释,加上人类显示声明需求,AI 能很好地完成写代码任务。
我在思考在写作的时候,是否也可以使用 ChatGPT 来辅助写作?
首先我认为,直接使用 AI 生成的文字,完全不能称作写作辅助,它们对写作毫无用处,甚至有反作用。利用不当会产生水文,我们现在已经明显能够感受到 AI 风格的水文越来越多,这社区的健康成长非常不利。
当我在 Vscode 中写作时,Copilot 也会像写代码一样,产生一段自动补全的文字内容。实际上我完全不需要这种补全或是生成一个段落,绝大多数的情况下都产生了一段废话,这不是写作,这是在制造垃圾。写作与写代码利用 AI 辅助应该是两种截然不同的思路,那么到底什么样的形式才是一个好的写作 Copilot?
在 Tauri2 正式版发布前,我曾经用 Tauri1 实现了一个版本,跑通了基本的流程,证明这是一条可行之路,至少我乐在其中。但是笔记这条赛道已经卷到极致,我即使做了也未必可以得到正向回馈,所以另一个方面,我希望可以扩展一下自己的技术栈。
所以我推翻第一版,使用 Tauri2 + Next.js 的组合来实现,至少目前我已经熟练掌握了 Next.js,已不虚此行。
下面聊一下其他相关技术选型:
[md-editor-rt](https://github.com/imzbf/md-editor-rt)。Tarui2 采用了插件的方式来支持各种功能:
本文是 Tauri 开源系列的第一篇,大致介绍我开发的内容。在未来的更新中,我将持续完善这款笔记 APP,目前在编本文时,我已经开始使用该 APP。
我希望在未来的迭代中,能够吸引更多的用户,同时也能为有意入坑 Tauri 的朋友们提供帮助。在本的后续文章中,我将详细阐述实现的细节,分享我的开发经验与思考。
大家好,我是 codexu。从今天开始,我将撰写一个关于 Tauri 跨端开发的系列文章,分享我在开发笔记 APP 过程中所采用技术和遇到的问题。
我开发的笔记 APP 起名为 NoteGen,“Gen” 的含义是生成,目前还处于 alpha 阶段,PC 端已经实现了核心功能,大家可以自行下载试用,完全免费,这里不对软件进行过多的介绍,有兴趣的伙伴可以进入 Github 了解。
为什么这么想不开做一个独立开发三件套之一的笔记呢?首先我不是个独立开发者,不指望用这个赚钱,另一方面我只是想为写作寻求一些灵感和案例,因为我之前用 Tauri 开发过一个小工具,并撰写了一篇文章《零 Rust 基础前端直接上手 Tauri 开发一个小工具》,收获了不少点赞。目前,Tauri 2.0 已经发布了正式版,并且移动端开发,因此我希望能进一步深入研究 Tauri,并计划开发一个更加复杂的软件。
我偶尔会写几篇技术文章,总结一下工作中的经验,或者记录一些有趣的技术。在这个过程中,我一直没有找到一款适合自己的笔记,平时可能就在 VSCode 中进行写作。因此,我萌生了自己造轮想法。以下是我对笔记 APP 的痛点总结:
按照上述的痛点,我进行了以下的需求分析:
为了快速记录而不影响思路,我决定使用截图的方式,只需要快捷键和框选记录内容两步操作即可。随后交给 APP 解决后续的工作(后台进行),将截图保存,进行 OCR 识别,使用 ChatGPT 生成截图的描述(为了方便用户识别截图内容),此时的识别内容几乎无法使用,因为其中包含了很多识别错误的特殊符号,没有格式,不方便阅读,不过没关系,后续在记录完成后,整理文章时,ChatGPT 可以将这些难以阅读的文字帮我们整理好。
想要免费又安全地存放笔记文件,我唯一想到的方式就是借用 GitHub 仓库存放。很多小伙伴也是这样存放自己的笔记,而且还可以顺便生成博客。然而,这种方式的一个不便之处在于需要在本地安装 Git,并且需要使用相应的编辑器。而在端上,操作则更显繁琐。因此,我通过 GitHub Rest API 实现了文件的同步,这样一来,多端同步也变得轻松可行。此外,这种方法天生支持数据的回滚,极大地方便了笔记的管理和保存。
这些提交记录的 commit message 也适用 AI 生成的。
题外话,虽然我家里弄了一台 NAS,但我仍然无法完全信任的安全性,我更倾向于 Github 为主,Nas 为辅去同步 Github 仓库。
有些图床同样需要付费,并且依赖第三方软件进行上传,用户不能直接从笔记内部进行上传。在这样的情况下,我又想到了使用 GitHub 图床。虽然它需要公开仓库,但合 jsdelivr 加速,依然能够获得不错的体验,最重要的是这一切都是免费的。
当然,在使用图床时无需手动上传,截图时可以实现自动上传至图床。同时,在写作时可以方便地手动插入或整理自动上传的图片到笔记。
在生产代码方面,GitHub Copilot 或 Cursor 已经证明了 AI 在编程方面的非常有效,在写代码时已经完全离不开。通过代码的上下文和注释,加上人类显示声明需求,AI 能很好地完成写代码任务。
我在思考在写作的时候,是否也可以使用 ChatGPT 来辅助写作?
首先我认为,直接使用 AI 生成的文字,完全不能称作写作辅助,它们对写作毫无用处,甚至有反作用。利用不当会产生水文,我们现在已经明显能够感受到 AI 风格的水文越来越多,这社区的健康成长非常不利。
当我在 Vscode 中写作时,Copilot 也会像写代码一样,产生一段自动补全的文字内容。实际上我完全不需要这种补全或是生成一个段落,绝大多数的情况下都产生了一段废话,这不是写作,这是在制造垃圾。写作与写代码利用 AI 辅助应该是两种截然不同的思路,那么到底什么样的形式才是一个好的写作 Copilot?
在 Tauri2 正式版发布前,我曾经用 Tauri1 实现了一个版本,跑通了基本的流程,证明这是一条可行之路,至少我乐在其中。但是笔记这条赛道已经卷到极致,我即使做了也未必可以得到正向回馈,所以另一个方面,我希望可以扩展一下自己的技术栈。
所以我推翻第一版,使用 Tauri2 + Next.js 的组合来实现,至少目前我已经熟练掌握了 Next.js,已不虚此行。
下面聊一下其他相关技术选型:
[md-editor-rt](https://github.com/imzbf/md-editor-rt)。Tarui2 采用了插件的方式来支持各种功能:
本文是 Tauri 开源系列的第一篇,大致介绍我开发的内容。在未来的更新中,我将持续完善这款笔记 APP,目前在编本文时,我已经开始使用该 APP。
我希望在未来的迭代中,能够吸引更多的用户,同时也能为有意入坑 Tauri 的朋友们提供帮助。在本的后续文章中,我将详细阐述实现的细节,分享我的开发经验与思考。
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。