V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
nick0x01
V2EX  ›  Python

求推荐,哪些框架组合可以给自己做个类似 jetbrains toolbox 的工具箱

  •  
  •   nick0x01 · 2023-10-06 23:23:03 +08:00 · 2161 次点击
    这是一个创建于 397 天前的主题,其中的信息可能已经有所发展或是发生改变。
    • 非计算机专业人士
    • 用 python 做了一些自己行业的应用,想整合一下做一个类似 jetbrains toolbox 的工具箱
    • 最好可以每个应用独立下载更新启动
    • 有自己的小服务器可以用于版本控制

    各位同好有啥推荐的吗?

    最近看到 PyQt-Fluent-Widgets 很不错,感觉可以搞起来。

    不过对于每一个小程序(或者说模块)的更新管理什么的,我真的一点都不懂啊。


    Anaconda Navigator 也很酷,希望和各位讨论一下实现思路。

    我感觉可以利用私有 pip 服务实现

    14 条回复    2023-10-09 20:52:52 +08:00
    neoblackcap
        1
    neoblackcap  
       2023-10-07 01:15:22 +08:00
    没记错的话 jetbrains 就是用 qt 做的,现在可能换了一下底层的,但是你用 qt 去做也是完全可以的。如果讲究快的话,可以适用 WebView2 之类的计算,写写网页就可以了
    t6gfx4ddv3
        2
    t6gfx4ddv3  
       2023-10-07 05:29:10 +08:00 via Android
    对 python 不熟,版本管理和下载这块,简单点可以直接部署文件,然后只用文件名和 semver 版本号管理版本,这样服务端可以只用少量 python 代码或者只用 nginx 应该就行了。
    更正式的方式是加上数据库,sqlite3 搭配个 gui 客户端,然后在 python 里写写查询应该也够用了。如果需要自己的管理页面,基本就开始步入后端领域了。
    python 的服务器/后端框架应该挺多的,选个简单顺手的应该很方便。
    t6gfx4ddv3
        3
    t6gfx4ddv3  
       2023-10-07 05:39:06 +08:00 via Android
    gui 客户端的话,python 里框架不熟,不过应该都能用这些框架写成 toolbox 类似的界面。
    其他方案的话,toolbox 现在应该是基于 compose multiplatform 了,kotlin 技术栈。缺点是依赖 jvm ,打包得带上一堆 jar ,也没有热重载,改啥都要重新编译好久。
    另一个选择是 flutter ,开发语言是 dart ,有热重载开发速度快,比 compose 完善,也更轻量,打包起来小很多。个人不太习惯 dart ,感觉和 java 一样有点啰嗦了,所以 flutter 也没深入体验过。
    如果偏好写前端界面的话选择就很多了,可以使用 tauri ( rust ),wails ( go ),还有最广泛使用也最重型的 electron ( node )。
    如果只需要 windows 应用,hta 也能写,基于 html/css/js ,只要一个文本文件就能跑了,不过比较古老,按主题的需求写起来应该会很痛苦。
    sunmker
        4
    sunmker  
       2023-10-07 09:08:50 +08:00
    WPF
    KgM4gLtF0shViDH3
        5
    KgM4gLtF0shViDH3  
       2023-10-07 10:39:54 +08:00
    用 electron ,pyqt 打包特别差。
    sky96111
        6
    sky96111  
       2023-10-07 11:01:10 +08:00
    @neoblackcap jb toolbox 是用 compose multiplatform 写的,技术栈是 skia+kotlin+jvm
    aerzha
        7
    aerzha  
       2023-10-07 11:08:38 +08:00
    @sky96111 请教下,仅 compose multiplatform 开发的话,技术栈应该不需要 skia 吧
    sky96111
        8
    sky96111  
       2023-10-07 11:15:29 +08:00
    @aerzha 不需要,我这里指的是 compose 的底层用到了 skia
    neoblackcap
        9
    neoblackcap  
       2023-10-07 14:13:36 +08:00
    @sky96111 前几个版本应该还是 qt 的,因为我的确看到 mac 版本有一堆 qt 的库
    werls
        10
    werls  
       2023-10-07 14:23:02 +08:00
    @neoblackcap 前几个版本时 还没有 compose multiplatform ,
    sky96111
        11
    sky96111  
       2023-10-07 15:55:06 +08:00
    @neoblackcap #9 前几个版本是 electron+cpp ,似乎从来没用过 QT
    timnottom
        12
    timnottom  
       2023-10-07 16:06:16 +08:00
    界面其实无所谓,我觉得你怎么设计模块化,是最重要的
    nick0x01
        13
    nick0x01  
    OP
       2023-10-09 20:50:15 +08:00
    感谢各位回复。最近感冒了,所以今天才来。我只熟悉 python ,所以想用 pyqt 先试试,比如 https://github.com/sinusphi/venvipy
    nick0x01
        14
    nick0x01  
    OP
       2023-10-09 20:52:52 +08:00
    ansys 也推出了类似的管理套件,我看看能不能换个皮。https://github.com/ansys/python-installer-qt-gui
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3020 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 13:24 · PVG 21:24 · LAX 05:24 · JFK 08:24
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.