Rust+Tauri 2实现个人聚藏APP:一个 “注定上不了“ 的个人收藏夹

聚藏:一个"注定上不了" 的个人收藏夹APP 。造这个的目的呢,其实是源于个人的需求。它不是什么商业项目,也没有上jia的可能(原因你懂,哪个平台愿意让自己的流量薅走?但这真真实实是用户的痛点需求)------但它是我这些年写过的、最让我自己满意的一个小工具,个人用起来挺爽就够了,同时用来学习 Rust和tauri2的移动端应用开发。


一、先说说我的烦恼

你有没有过这样的经历?

刷抖音,看到一个特别棒的旅行 vlog,点了收藏; 刷 B 站,发现一个讲历史的宝藏视频,点了收藏; 公众号里读到一篇干货,点了收藏; 知乎上看到一篇深度回答,点了收藏; 小红书、微博、微信读书......继续收藏。

一年下来,我的收藏夹散落在七八个 App 里。想回看某个东西的时候,我得回忆"哦这个是抖音看到的",然后打开抖音去翻收藏;另一个是 B 站的,再打开 B 站......来回跳转、来回找,越找越烦,更甚者,找到了文章却看不了了,因为作者哪天给删除了。

更要命的是:收藏这个动作,慢慢变成了负担。收藏得越多,越找不到;越找不到,越不敢收藏。明明是在"积累知识",最后却成了"堆积焦虑"。

换手机?卸载重装?很多平台的收藏说没就没。收藏了,却永远不属于自己。

这就是聚藏APP的起点。


二、这个项目的初衷

我想得很简单:把所有平台的收藏,都装进同一个地方。

项目开源地址:gitcode.com/qq8864/juCa...

不管你在哪里看到的好东西------视频也好、文章也好、图文也好、一句有感触的话也好------随手分享给聚藏,它帮你统一收好。想看了,一个 App 就能找到;不用记着"这东西在哪个平台"。

听起来是不是特别美好?

对,特别美好。美好到------注定无法上。


三、为什么它上不了架

原因你懂的。聚合,是所有内容平台的禁区。

抖音、B站、小红书、公众号......每个平台都在构建自己的内容生态和用户时长。它们的收藏功能、会员体系、广告分发,都建立在"用户留在我的 App 里"这个前提上。

而聚藏做的事情,恰恰是把内容从各个平台"抽出来",放到一个中立的地方,让用户不用再回到原平台 就能观看。这在用户体验上是福音,但在平台眼里,这是"拆台"。但是这仅是个人自己用的小工具,连发行产物也没有,仅用于学习研究。

所以:

  • 应用商店审核?大概率过不了------"聚合第三方内容"本身就是敏感词。
  • 就算侥幸上架,也会因为平台方的投诉、版权争议,随时被下架。
  • 更别说那些机制、......平台用尽手段不让你拿到内容。

这就是一个"消费者想要、平台不允许"的死结。 聚藏站在了消费者这一边,所以它注定只能是个"学习项目"!

注:仅限于个人学习研究,严禁用于其他用途!


四、那为什么还做?

因为,虽然上不了,但它对我自己有用。

这个项目的定位从一开始就很清醒:不是商业产品,是我自己的个人工具。

  • 我自己收藏的东西,我自己看;
  • 数据存在我自己电脑上,不上传、不分享、不商业化;
  • 平台不欢迎,我就低调地用,不推广、不声张。

说白了,它就是我的个人知识库------把我在网上攒下的那些东西,统一收进一个抽屉里:

  • 📺 视频:抖音、B站、头条、百度的视频,想看了直接看;
  • 📄 博文:公众号、知乎、百家号的文章,想读了一口气读完;
  • 🖼 图文:小红书的笔记、微博的长文;
  • 💬 说说:一些收藏的短句、感悟;
  • 📝 文摘:看到哪句好就收哪句,随手记下来。

它不追求"所有用户",只追求一件事:让我自己用得顺手。 所以功能怎么设计、界面怎么摆、要缓存还是要连播------都是按我自己的使用习惯来打磨的。


五、技术实现:一个 Rust 开发者的小倔强

这个项目技术选型上我挺"较真"的------用的是 Tauri 2 + Rust + React + TypeScript,而不是随便套个 Electron。

为什么不用 Electron?因为 Tauri 体积小(一个安装包几 MB,Electron 动辄一百多 MB)、内存占用低、而且 Rust 写后端是真的爽。做这种"聚合内容"的工具,后端要处理网络请求、解析页面、管理本地存储,Rust 的性能和安全性正好合适。

1. 收藏数据存哪?------SQLite

收藏列表用 SQLite 存本地(jucang.db),H5 环境回退 localStorage。数据完全在本地,不上传任何服务器------毕竟这种项目,数据在自己手里才安心。

2. 体验细节------都是按自己习惯磨的

  • 底部固定一个粘贴栏:复制了链接,直接粘贴、一键收藏(手机上没有回车键,就加了"★ 收藏"按钮);
  • 顶部 🎬 缓存管理:看过的视频都在这里,能单独播、能清空、还能**"全部播放"连播**------一口气把缓存的视频看完;
  • 顶部 ⚙ 设置:并发数等参数随手可调;
  • 播放失败会自动降级打开原始页面,绝不让你白点一下。

这些细节没什么"高大上"的,纯粹是我自己用的时候觉得哪里别扭,就改哪里------这可能就是个人项目最大的乐趣。


六、它是什么,不是什么

它是:

  • 我的个人收藏夹 / 个人知识库;
  • 一个把博文、图文、视频、说说、文摘统一收纳的抽屉;
  • 一个按我自己的使用习惯,不断打磨的小工具。

它不是:

  • 不是一个可以上架的商业产品;
  • 不是一个想挑战平台规则的"盗版神器"(它只收藏用户自己分享来的内容,不搬运、不传播);
  • 不是一个面向大众的"完美产品"。

它就是一个私人项目------就像自己动手做的一个书架:别人可能觉得"这书架还挺好",但我做它,从来不是为了别人。


七、写在最后

有句话说得好:"技术改变世界",但对大多数人来说,技术先改变自己的生活就够了。

聚藏解决的不是什么惊天动地的大问题,只是"收藏的东西太分散、想找的时候太麻烦"这个小烦恼。但对我自己来说,这个小烦恼解决了,生活真的变舒坦了一点------那些攒下来的视频、文章、句子,终于整整齐齐地待在一个地方,想看的时候伸手就有。

它上不了架,没关系。 平台不欢迎,也没关系。 只要它对我自己有用,这个项目就值得一直做下去。

一次分享,全部聚藏。 所有平台的收藏,一个 App 看完------哪怕这个"看完",只有我一个人在用。


------ 聚藏(JuCang),一个注定上不了的个人收藏夹。

相关推荐
Kapaseker2 小时前
Rust 凭什么不用垃圾回收?先搞懂 Owner
rust
Amos_Web2 小时前
Rspack 源码解析(十五):Loader Runner 与 JS Loader 桥接
前端·rust·前端框架
柯南46689 小时前
【AI开发之Rust】第 18 课:SQLite 持久化与本地缓存 —— 给 store 填上真实现
rust·编程语言
柯南46689 小时前
【AI开发之Rust】第 17 课:项目总览与核心架构 —— AI 助手 Rust 核心从 0 到 1
rust·编程语言
柯南46689 小时前
【AI开发之Rust】第 16 课:FFI 手写绑定与内存布局 —— 把 Rust 交给别的语言
rust·编程语言
达子6669 小时前
RUST 图解 第 2 章:写小游戏
rust
Amos_Web9 小时前
Rspack 源码解析(十四):Resolver 与 NormalModuleFactory
前端·rust·源码
Kapaseker9 小时前
秒懂 Rust 的 7 个核心概念
rust
RobinDevNotes9 小时前
用 godot-rust 给 Godot 写 Rust 扩展
rust·游戏开发
十万公里通票9 小时前
Rust 高级特性秀场:spawn 闭包的类型约束
rust