分享一个新的 clash 客户端

2022-03-04 22:49:05 +08:00
 gydi

Clash Verge ,是基于 tauri 框架开发的开源跨平台 clash 客户端,目前仅良好支持 Windows 和 macos ( Linux 没测过)。部分 ui 和交互设计参考了 cfw ,clashX ,clash-dashboard 等。目前的完成程度已经基本满足自用了,所以分享给大家,希望可以收获一点建议或意见。如果感兴趣的话,欢迎 issue 、PR 或 star 呀!

项目地址: https://github.com/zzzgydi/clash-verge

如果有想尝试使用的话,可以在 https://github.com/zzzgydi/clash-verge/releases 下载最新的安装包。

开发初衷

clash 核心提供了较为完备的接口,让人看了难免有一种,做个套壳 GUI 我上我也行的错觉。正好那会儿闲着没事,想写一写 Rust 练一练手,于是就找了一个 Rust 的 GUI 框架开始干。

由于还没研究透这个 clash 的玩法和配置,所以目前在功能上相较于其他客户端来说可能会缺失,这个需要时间慢慢补。下面简单罗列一些特性和不足吧。

Features

不足的地方

部分截图


其实不足的地方还是有挺多的,还有一些诸如多语言支持、pac 支持等 features 也躺在 todo list 里很久了。如果有做设计或交互的朋友觉得哪里不好,也可以指点一二的,毕竟琢磨 ui 还是挺头疼的。

感谢大家,如果有感兴趣的话,欢迎下载使用或 PR 呀!

56977 次点击
所在节点    分享创造
162 条回复
me221
2022-03-05 08:54:05 +08:00
好漂亮!
root01
2022-03-05 09:01:36 +08:00
没中文 差评
jiyan5
2022-03-05 09:11:36 +08:00
谢谢,下载用用
jiyan5
2022-03-05 09:13:29 +08:00
希望能保持轻巧,能有简单的功能就行,cfw 就有点臃肿了,
takashiki
2022-03-05 09:21:08 +08:00
clash 我一直有个痛点,机场的一键订阅都是直接下载一个配置文件,然后我自己又会定义一套规则,我想在自己定义的规则里引用机场配置文件的 proxy ,这样就能既保持机场 proxy 配置自动更新,又能符合自己的需求。
但是 clash 好像用不了多个配置文件,也就不能在一个配置文件里引用另一个配置文件的 proxy 了,不知道有没有解决方案。
Innovatino
2022-03-05 09:24:12 +08:00
集成一下 subconverter 就更好了
不过不知道 subconverter 的协议是什么
iamv2er
2022-03-05 09:35:39 +08:00
支持!
aircjm
2022-03-05 09:40:33 +08:00
@takashiki 有 subconverter
Eiden
2022-03-05 10:03:53 +08:00
支持
woshinide300yuan
2022-03-05 10:04:24 +08:00
没中文版,差评。DOGE
gydi
2022-03-05 10:06:05 +08:00
@nieyujiang #15 不会考虑带上 webview2 的,我觉得自己装 webview2 ,只需要安装一次就 ok 了,这样我这个 app 或者其他所有依赖于 webview2 的 app ,都可以共享这个 runtime 。这样不仅安装包体积小,而且 webview2 更新时,所有 app 都能享受最新的 webview2 的特性或者修复,其实这样会更好的。
gydi
2022-03-05 10:09:12 +08:00
@ljsh093 #16 了解了解,win11 这个问题我会及时跟进 tauri 插件那边的更新
gydi
2022-03-05 10:12:06 +08:00
@gzlock #17 这个延迟和黑色背景确实是个问题,在 mac 上也有,我一度以为是页面的背景色,其实不是。不过这个问题开启了窗口透明的话,可以缓解一下的,因为看不到黑色的背景了,你可以试试
gydi
2022-03-05 10:15:04 +08:00
@hei1000 #18 这个暂时没有计划,主要是我没装 linux ,框架方面肯定是支持的,只是实现逻辑里还有些细枝末节需要适配 linux 但没做,可以期待一下有没有大佬抽空 PR 适配一下
darer
2022-03-05 10:16:39 +08:00
@gydi 说实话 有的时候是不想给系统上太多环境的 甚至想每个应用彼此隔离 打包就能带走
所以还是建议带个 webview2 或者 提供带 webview2 和不带 webview2 两个版本
gydi
2022-03-05 10:17:50 +08:00
@superhack #20 network extension 这个不太清楚,不过肯定是需要修改网络配置的。开源软件,暂时还没想着搞 notarization 啥的
gydi
2022-03-05 10:24:33 +08:00
@takashiki #25 这个问题,应该可以用 clash 配置本身的 provider 功能实现,或者如果你用过 cfw 的话,它里面也提供几个方法去处理,有仅通过配置的还有写 js 的,扩展性还是不错的。我这个 app 的话,也会支持相关功能,现在还在 coding 中。
gydi
2022-03-05 10:26:35 +08:00
@Innovatino #26 有看到一个开源的 subconverter 仓库,之后有空可以支持一下,楼上就有提到类似的,todo 加 1 吧
gydi
2022-03-05 10:33:40 +08:00
@darer #35 这个确实也有道理,之后的发布可以多打包一个带 runtime 的
g531956119
2022-03-05 11:07:57 +08:00
@takashiki 可以使用 proxy-providers 来整合多个机场,但首先需要把订阅文件转换为 provider 格式
https://proxy-provider-converter.vercel.app/
随后就可以用下图类似方法添加多个机场的节点

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/838078

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX