• 请不要在回答技术问题时复制粘贴 AI 生成的内容
yisier
V2EX  ›  程序员

用 Rust 重写一切,这次是 navicat

  •  
  •   yisier ·
    PRO
    · 4h 38m ago · 5871 views

    背景

    公司前阵子收到了律师函,于是通知全员删除 navicat ,个人版也不行,要求用开源的 DBeaver ,由于常年习惯了 navicat 的布局和操作习惯,实在适应不了其他工具,都 AI 时代了,索性自己撸一个吧。

    技术栈 & 进度

    Rust + GPUI ,gpui-kit 组件库 , shadcn 风格。无 WebView ,全部 UI 都用 Rust 写

    适配了 ODBC 驱动,理论上只要有 ODBC 驱动,都能连接

    数据库 状态
    MySQL / MariaDB ✅
    SQLite ✅
    SQL Server ✅
    PostgreSQL ✅
    Oracle ✅
    DB2, Redis, ... 接入中

    截图

    image.png image.png image.png image.png

    结尾

    github:https://github.com/yisier/rustgrid

    常用功能基本上 “可以用了”,像是 用户/角色/权限/模型/图表/自动运行 这些的功能,navicat 还是太权威了,每家数据库的操作体系都不一样,还有很多坑要踩。

    AI 时代传统软件公司的天真的塌了,放在两年前都完全不敢想象,我一个从来没接触过 Rust 的人,不到一个月居然可以做出这么多功能。

    86 replies  •  2026-10-13 17:43:02 +08:00
    lllllliiii
        1
    lllllliiii  
       4h 31m ago   ❤️ 7
    doraemonki
        2
    doraemonki  
       4h 28m ago   ❤️ 2
    看见 gpui 立马支持一下
    LoveXJP
        3
    LoveXJP  
       4h 28m ago
    你这是直接把 UI 都抄了吗,shadcn 风格没有这么丑啊😂
    yisier
        4
    yisier  
    OP
    PRO
       4h 26m ago
    @LoveXJP 丑是丑了点,布局和交互方式没有学习成本了。ui 可以慢慢调嘛
    signalas1
        5
    signalas1  
       4h 26m ago
    反编译出来什么边界问题都能解决
    lolo1
        6
    lolo1  
       4h 23m ago
    可以可以,非常强
    awesomePower
        7
    awesomePower  
       4h 22m ago
    厉害,支持下
    novaline
        8
    novaline  
       4h 16m ago
    逆向一切
    vone
        9
    vone  
       4h 10m ago
    哥,你真硬。
    GaGaGood
        10
    GaGaGood  
       4h 4m ago
    牛逼,支持一下
    yisier
        11
    yisier  
    OP
    PRO
       4h 4m ago
    @signalas1 商业软件,反编译要吃官司吧
    SilencerL
        12
    SilencerL  
       3h 59m ago   ❤️ 12
    ganxj
        13
    ganxj  
       3h 57m ago
    我们公司也收到了 navicat 的律师函,但是没有收到 jetbrains 的呀,datagrip 用习惯了之后也是很香的
    tangping
        14
    tangping  
       3h 56m ago
    可以把 navicat 导出的链接 导入进去吗?
    jaylengao
        15
    jaylengao  
       3h 54m ago
    支持了,现在用 dbx ,内存占用有点大了
    humanity
        16
    humanity  
       3h 52m ago
    dbx 也可以,就是交互需要学习成本
    413420
        17
    413420  
       3h 52m ago via iPhone
    这个必须支持
    chenluo0429
        18
    chenluo0429  
       3h 52m ago via Android
    厉害厉害
    按照最近很火的那些 rust 重写的项目,还可以叫 datacraft 或者 dbcraft
    MASAILA
        19
    MASAILA  
       3h 49m ago   ❤️ 1
    叫 navicraft 吧
    yisier
        20
    yisier  
    OP
    PRO
       3h 47m ago
    @tangping 当然可以,已经排上日程了
    wuhunyu
        21
    wuhunyu  
       3h 43m ago
    这种商业闭源的软件, 除了 ui 这种直接能看到的, 很多不可见的逻辑功能是怎么给提示词的, 反编译?
    zsyevan
        22
    zsyevan  
       3h 40m ago
    navicat 很多时候是为了审计采用,要么很多免费的 sql client 也够。
    bbroot
        23
    bbroot  
       3h 39m ago
    收藏下 lz 加油
    yidinghe
        24
    yidinghe  
    PRO
       3h 35m ago
    @wuhunyu 很简单,只做自己需要的看得见的不就好了。
    hingle
        25
    hingle  
       3h 29m ago
    tableplus 也不错,在用 Linux 版的, 貌似没有只能开两个 tab 的限制。
    BearCookie
        26
    BearCookie  
       3h 20m ago
    table plus 啥都好,就是太贵了
    wsseo
        27
    wsseo  
       3h 19m ago
    这东西怎么变现,能长期维护吗,有 bug 会及时修复吗?
    flyxl
        28
    flyxl  
       3h 17m ago via Android
    作为 DataZen 的作者,我表示数据库管理客户端没有看起来那么简单,不同数据库驱动差异,连接管理,会话管理还是有好多坑。
    NO9527
        29
    NO9527  
       3h 15m ago
    这个界面不错,有那味了
    yisier
        30
    yisier  
    OP
    PRO
       3h 13m ago
    @wuhunyu 也就外观和操作逻辑能借鉴,你可以看下仓库里 AGENTS.md 文件
    imherer
        31
    imherer  
       3h 11m ago
    @yisier #30 好奇问下 AGENTS.md 内容是怎么来的?和 AI 讨论方案最后形成的吗?
    Wao
        32
    Wao  
       3h 6m ago
    关键是 Navicat 自带的那些数据传输/同步/数据字典等实用功能/定时任务
    zhhqiang
        33
    zhhqiang  
       3h 1m ago
    很强,最近换到 dbx 了
    wuhunyu
        34
    wuhunyu  
       2h 59m ago   ❤️ 2
    Navicat 最好用的是它比 datagrip 轻量, 然后它的迁移功能真的巨好用, datagrip 的迁移约等于没有, 但智能提示 datagrip 比 Navicat 好太多了
    如果不能保留 Navicat 的迁移功能, 那灵魂就没了
    kkadmin
        35
    kkadmin  
       2h 54m ago
    我能进来一起干吗
    yisier
        36
    yisier  
    OP
    PRO
       2h 54m ago
    @imherer 可以这么理解
    yisier
        37
    yisier  
    OP
    PRO
       2h 52m ago
    @Wao
    @wuhunyu

    看来是时候把 数据同步 传输 功能搞出来了
    yisier
        38
    yisier  
    OP
    PRO
       2h 51m ago
    @kkadmin AI 时代,我觉得与人的沟通成本 > 与 AI 沟通成本。但是欢迎 PR
    yiyiwa
        39
    yiyiwa  
       2h 50m ago
    rust 有点大,喜欢用 zig 。
    iorilu
        40
    iorilu  
       2h 46m ago
    dbx 不是很火吗

    这几个月数据库工具和 shell 工具,抵以前 10 年还多
    hesetiema
        41
    hesetiema  
       2h 45m ago
    有咩有谁逆向下 todesk
    ATKLLL
        42
    ATKLLL  
       2h 42m ago
    这个赛道估计会被 DBX 统治
    ala2008
        43
    ala2008  
       2h 42m ago
    all in ai !支持,多造轮子
    yisier
        44
    yisier  
    OP
    PRO
       2h 42m ago
    @wsseo 不知道怎么变现,我另一个项目 3k star ,维护了 5 年,收入只靠仓库挂了俩 aff 链接。 不管有没有收入吧,先干了再说
    ala2008
        45
    ala2008  
       2h 41m ago
    @iorilu dbx 操作需要摸索,有点成本
    ala2008
        46
    ala2008  
       2h 40m ago
    @yisier #44 看 dbx ,那么多广告支持。Sponsors ,应该赞助不少
    shuqin2333
        47
    shuqin2333  
       2h 38m ago
    导入导出、数据库对比功能有了没。我只对这个有需求
    xeneizes
        48
    xeneizes  
       2h 28m ago
    @ATKLLL dbx 是 webkit2gtk 吧,开的时间长了,会白屏卡死之类的
    yisier
        49
    yisier  
    OP
    PRO
       2h 28m ago
    @shuqin2333 导入导出有了,数据库对比还没有
    jonty
        50
    jonty  
       2h 27m ago
    @yisier #11 rea 搞一搞,rust 再重写一遍
    yacolinqi
        51
    yacolinqi  
       2h 22m ago
    @jaylengao tauri 嘛! 底层还是用的 webview 无非就是换汤不换药
    skills
        52
    skills  
       2h 18m ago
    @yisier #49 #49 啥时候能加上啊, 已经 star
    weixiangzhe
        53
    weixiangzhe  
       2h 15m ago via Android
    dbx 加一
    kairosbladejiuji
        54
    kairosbladejiuji  
       2h 13m ago
    哥,我不白用,我给你点 star
    XProxyAi
        55
    XProxyAi  
       2h 8m ago
    @yisier #11 混淆一下,谁知道你代码是哪里抄写的,不商用 基本上没事情
    d119
        56
    d119  
       2h 4m ago
    没有上报账号密码吧
    s8702623
        57
    s8702623  
       1h 57m ago
    哇!厉害了
    wuzhewuyou
        58
    wuzhewuyou  
       1h 52m ago   ❤️ 1
    牛逼,天下苦 navicat 久矣
    babhbsbx
        59
    babhbsbx  
       1h 52m ago   ❤️ 1
    @yisier #37 数据同步 和 数据传输真是灵魂
    burymme11
        60
    burymme11  
       1h 50m ago
    可惜才看到,已经转到 dbx 了,给你点下 star 。
    yyysuo
        61
    yyysuo  
       1h 48m ago
    @wsseo 软件行业已经完蛋了,变啥现啊,谁都可以自己随便写一个。
    children009
        62
    children009  
       1h 47m ago
    逆向一切,是不是可以增加一下可以远程保存 sql
    i7eo
        63
    i7eo  
       1h 47m ago
    我最近换了 dbflux ,好像也是 gpui
    fengzigg9527
        64
    fengzigg9527  
       1h 43m ago
    今天公司刚收到通知。。。
    wersero
        65
    wersero  
       1h 41m ago
    牛逼,现在有 ai 后,全都复刻了
    iorilu
        66
    iorilu  
       1h 41m ago
    @yyysuo 单机软件工具基本确定都玩完

    除非是云端得

    一个公司几十年积累

    现在个人一个月就能基本复刻, 这啥概念, 只能说时代淘汰得时候从来不打招呼
    bowencool
        67
    bowencool  
       1h 40m ago
    @BearCookie 开源平替 table pro
    @hingle
    11ssss
        68
    11ssss  
       1h 39m ago
    包含查询构造器吗,在功能介绍里没看到?
    alsas
        69
    alsas  
       1h 35m ago
    牛逼
    yisier
        70
    yisier  
    OP
    PRO
       1h 29m ago
    @11ssss 这个功能太复杂了,我都是手写 sql ,从来没用过这功能。先实现常用功能,后面再补这类小工具
    workspace
        71
    workspace  
       1h 29m ago
    传统软件厂商的日子不好过了。
    yisier
        72
    yisier  
    OP
    PRO
       1h 27m ago
    @d119 源码就在 github 上,release 是 action 构建的,除非你从第三方下载的软件。
    bytewalk
        73
    bytewalk  
       1h 25m ago via iPhone
    @LoveXJP #3 我也想说,这哪里是 shadcn 啊。。。不过佩服 op 的执行力
    dcdlove
        74
    dcdlove  
       1h 22m ago
    别写了 dbx 已经非常好了
    yisier
        75
    yisier  
    OP
    PRO
       1h 2m ago
    @fengzigg9527 赶紧换上 RustGrid 😉
    vopsoft
        76
    vopsoft  
       55 mins ago   ❤️ 1
    大佬 等你用 Rust 重写 nps
    dz5362
        77
    dz5362  
       54 mins ago
    AI 圆了我想在 3DS 上开发游戏的梦,当然这个是国产二梯队模型花了 100 分钟写出来的,用的 Rust ,我很满意了哈哈
    antipro
        78
    antipro  
       47 mins ago via Android
    抄 UI 也一样侵权的,有外观专利的。小心点吧。
    antipro
        79
    antipro  
       47 mins ago via Android
    说不定更严重,造成广泛损害了。
    yisier
        80
    yisier  
    OP
    PRO
       33 mins ago
    @antipro #78 你有查过吗,外观专利
    boringwheat
        81
    boringwheat  
       20 mins ago
    牛逼,能不能把 DataGrip 也重写一个
    holystrike
        82
    holystrike  
       17 mins ago
    没人用 HeidiSQL 吗?
    antipro
        83
    antipro  
       17 mins ago
    @yisier 我更正一下,的确没有外观专利,但是真有这种事,我忘记是哪个了。你这个不只是界面近似了,操作习惯都一模一样,极易引起混淆。
    panlatent
        84
    panlatent  
       10 mins ago
    现在重新是很方便,但细节修复太消耗精力和 token 了。0.99 -> 1 >> 0 -> 0.99
    zedpass
        85
    zedpass  
       8 mins ago
    @hesetiema todesk 这种没啥逆向的必要性吧?开源的远程软件挺多不错的,像 rustdesk 之类的;这种远程软件主要还是服务器和线路优化吧
    leegradyllljjjj
        86
    leegradyllljjjj  
       7 mins ago
    nb ,之前看到国外一个程序员把 Photoshop 地主要功能复现出来了,这些传统软件大厂估计得哭了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4972 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 194ms · UTC 09:50 · PVG 17:50 · LAX 02:50 · JFK 05:50
    ♥ Do have faith in what you're doing.