开发时长一年半,新一代数据库、SSH/SFTP 跨平台桌面 GUI 工具

2024-05-06 09:14:50 +08:00
 WayneXxx

开发时长一年半,新一代数据库、SSH/SFTP 跨平台桌面 GUI 工具

事情的起因大概在 22 年 9 月,脑子里突然冒出来一股强烈的开发一款独立软件的念头,于是开始了这段独立开发之路,起初我只是想做关于数据库方面的功能,后面实现 MySQL SSH 隧道功能时,想到一些自己使用其他 SSH 或 SFTP 工具存在的一些痛点,于是便开了一个新坑:把 SSH/SFTP 功能也集成起来,数据库目前暂时只支持 MySQL 和 MariaDB ,预计在第三季度将 PostgreSQL 、SQLite 、Clickhouse 也集成进来,数据库方面集成优先级是 是否开源>流行度,后续可能还会接入 Redis 、服务器 Docker 管理。
从 22 年 9 月开始,我一直在利用业余时间开发这款软件(这可能是我坚持时间以及付出精力最多的一个项目了哈哈),中途项目经过了多轮重构(比如说从 Vue2 升级 Vue3 )、性能优化、以及一些基础设施的搭建(插件化、热更新、插件发布持续集成等等),再加上我个人对自己软件有一种完美主义者的心态,页面不好看,交互不友好,页面卡顿,内存占用过大,内存泄漏,Code review 都可能引发我的调整或重构,再加上作为一个程序员对推广方面确实比较排斥,所以耗时 1 年半迟迟没有正式发布并开始推广,这个帖子就是本软件的第一个推广哈哈。
HexHub 目前应该已经是一个比较可用的状态了,因为我已经在两个月前将 SSH 和 MySQL GUI 切换到 HexHub 了,详细的功能说明我就不写,简单放几张页面截图和功能描述,欢迎大家体验,使用过程中有觉得不好地方一定记得留言我尽力解决。

预览图

首页导航页

暗色主题

数据库表列表页面:会显示表的一些摘要信息,表列表目前有两个视图类型,当表数量大于 50 时会自动切换成网格模式,能够充分利用空间显示更多的表。然后右边有个空间会实时显示当前数据库的一些指标

表结构编辑:布局比较类似 Navicat ,不过多了一些小细节,比如说新增/编辑着色、拖拽排序、新增字段根据名称推断类型等等

SQL 查询:基于 CodeMirror 魔改的,自动完成智能程度我认为 DataGrip > HexHub > DBeaver > Navicat

表数据编辑:自研的数据表格,做了相当多的优化,实现了新增/编辑作色,撤销、表格批量粘贴、多行编辑、内联编辑、不限制行数,百万甚至千万数据同屏依旧丝滑,几乎可以像 Excel 一样轻松编辑数据,不方便下载的同学可以访问官网有预览 Demo 。

SSH/SFTP:页面同时包含终端、本地目录、远程目录,远程目录路径能够跟随终端路径发生变化,支持拖拉拽复制/粘贴文件,权限控制等等,使用起来感觉还是相当不错的。

文件传输:支持 SFTP 、ZMODEM 、SCP 三种文件传输协议,SFTP 使用了并发上传技术、ZMODEM 协议我自己用 Golang 实现了一个(不得不说这个古老的非标准协议要做稳定真的是相当费劲),很大程度解决了很多其他工具会遇到的传输不稳定传输速度慢的问题。

实时面板:支持网速、CPU 、内存、进程列表、Docker 容器列表、磁盘挂载列表等信息。

功能表

基础

数据库

SSH/SFTP

技术栈:Golang TypeScript Vue3 C++ CEF
官网:www.hexhub.cn

最后奉上 5 折折扣码:v2ex, 当然免费版已经足够日常使用,诸位可按需购买。

18462 次点击
所在节点    分享创造
165 条回复
WayneXxx
2024-05-08 11:29:25 +08:00
@supersu 已经支持上了,sftp sudo 提权属于非标准实现,之前正好开了一个 go/sftp 的分支顺便就实现了,预计晚上发布
qbmiller
2024-05-08 14:14:11 +08:00
大佬,go CEF 用哪个框架 。还是直接 cef 直接用。有类似的教程吗。 一直想学个 go 的 gui
WayneXxx
2024-05-08 14:44:13 +08:00
@qbmiller GUI 的话跟 Golang 这边没关系 Golang 只负责通过一套 RPC 协议为前端提供支持,GUI 直接用 C++调 CEF 套了一层壳然后启动时会启动一个 Golang 的后台进程
joewp
2024-05-08 15:33:33 +08:00
连线上表编辑表结构出现这个错误
WayneXxx
2024-05-08 15:40:29 +08:00
@joewp #144 请执行 select version(),发送一下数据库版本呢
joewp
2024-05-08 16:34:27 +08:00
@xiwh #145 5.5.62
WayneXxx
2024-05-08 16:49:00 +08:00
@joewp #146 好的下一版修复
supersu
2024-05-08 22:45:28 +08:00
@xiwh 辛苦啦~
BigBai
2024-05-09 09:26:25 +08:00
请问,每天打开都要下载一次插件吗,还是说 OP 每天都在熬夜更新
WayneXxx
2024-05-09 09:37:46 +08:00
@BigBai 没有更新的话只需下载一次,首次下载插件后离线也可能使用,确实是因为每天都在更新哈哈
Tukali
2024-05-09 11:23:38 +08:00
来个限时终身啥的呗,肯定支持直接
WayneXxx
2024-05-09 11:29:40 +08:00
@Tukali 嗯您可以免费版先用着,很多我想做的功能还没做现在不太好定价,等下个大版本更新,就出一个永久版
Psily1017
2024-05-09 11:29:43 +08:00
提个遇到的 bug 吧,windows10 环境下 移动软件,会自动一直缩小,重现率 100%
WayneXxx
2024-05-09 11:31:44 +08:00
方便在 cmd 执行 ver 命令将当前系统版本发送给我吗,我找个环境复现一下
Tukali
2024-05-09 12:01:28 +08:00
@xiwh 更新了记得邮件通知下,我一定支持
WayneXxx
2024-05-09 13:43:20 +08:00
@Tukali #155 谢谢,届时一定通知您
garyvalue
2024-05-20 05:54:11 +08:00
确实 windows11 环境下 移动软件,会自动一直缩小
WayneXxx
2024-05-20 09:13:00 +08:00
@garyvalue 这个问题我一直没能复现出来,请问您的环境有什么特殊之处吗(多显示屏 or 高分辨率等等)
garyvalue
2024-05-21 19:33:48 +08:00
@xiwh #158 4k 屏幕 其他好像没特殊的
WayneXxx
2024-05-21 20:50:50 +08:00
@garyvalue #159 已经解决了,是 CEF 的 BUG ,设置了屏幕缩放比例会触发,在官网下载新安装包就好了

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

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

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

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

© 2021 V2EX