bt-downloader是一个基于webtorrent和electron的磁力链下载器。
技术栈
- 框架:electron + vite + Vue3 + Typescript
- 前端持久化 pinia
- 磁力链下载:webtorrent
- UI:TailwindCSS PrimeVue
- 数据库: better-sqlite3
- ORM: Typeorm
- 配置保存:electron-store
对于想上手electron的朋友,可以看看
webtorrent
webtorrent是一个基于WebRTC的磁力链下载客户端。对比Aria2的优势在于webtorrent使用js写的,同时也有对应的types包,所以对于electron开发会比较友好。
better-sqlite3
对于桌面端应用的数据库选择,一般是选择sqlite3。而better-sqlite3要比sqlite3性能好一些,所以选择了better-sqlite3
ORM方面则选择了Typeorm。
electron-store
对于一些比较简单的数据,例如系统配置等数据,可以直接用来保存,非常快捷方便。
UI
ui方面taliwindcss是必选的,这个习惯之后真的太香了。而PrimeVue则是因为还没用过所作出的选择,不必太过在意。
结语
经过这次开发,大概是掌握和熟悉了electron的开发了,有一说一开发桌面应用的好玩程度比web端要好玩很多,主要是可以操作的范围多了很多,使得一些想法和实现变得可能。