1111mp / nvm-desktop

Node Version Manager Desktop - A desktop application to manage multiple active node.js versions.
https://github.com/1111mp/nvm-desktop
MIT License
704 stars 40 forks source link

这个项目可以弄一个纯净版的脚手架不我觉得蛮不错的 #109

Open lsrweb opened 3 weeks ago

1111mp commented 3 weeks ago

你是说一个命令行工具吗

其实也可以的 只不过现在已经有了一些挺好用的cli工具 比如 nvm fnm volta这些 你可以先试用一下 如果实在有这个需求的话 后续也会考虑在nvmd的cli工具中添加安装卸载这部分的逻辑的

lsrweb commented 3 weeks ago

不不不,我的意思是把源码弄一份纯净版,最近我也在学electron苦于没有一个好的起手模版


发件人: The1111mp @.> 发送时间: 2024年8月22日 15:29 收件人: 1111mp/nvm-desktop @.> 抄送: Lisa Feaster @.>; Author @.> 主题: Re: [1111mp/nvm-desktop] 这个项目可以弄一个纯净版的脚手架不我觉得蛮不错的 (Issue #109)

你是说一个命令行工具吗

其实也可以的 只不过现在已经有了一些挺好用的cli工具 比如 nvm fnm volta这些 你可以先试用一下 如果实在有这个需求的话 后续也会考虑在nvmd的cli工具中添加安装卸载这部分的逻辑的

― Reply to this email directly, view it on GitHubhttps://github.com/1111mp/nvm-desktop/issues/109#issuecomment-2303972827, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AOYWDLMK5KWN5UNB7XVLRQLZSWHMRAVCNFSM6AAAAABM5ICEL2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMBTHE3TEOBSG4. You are receiving this because you authored the thread.Message ID: @.***>

1111mp commented 3 weeks ago

你可以使用 electron-vite 来创建你的项目 这个项目也是以这个项目为基础改造的 只不过觉得编译速度还是有点慢 就用tsup改写了一下 不过应该还是挺好用的 你可以试试

lsrweb commented 3 weeks ago

好的,我去看看,Thanks♪(・ω・)ノ[cid:63df4064-cb54-4d3e-b146-f1435461e799]


发件人: The1111mp @.> 发送时间: 2024年8月22日 15:44 收件人: 1111mp/nvm-desktop @.> 抄送: Lisa Feaster @.>; Author @.> 主题: Re: [1111mp/nvm-desktop] 这个项目可以弄一个纯净版的脚手架不我觉得蛮不错的 (Issue #109)

你可以使用 electron-vitehttps://cn.electron-vite.org/ 来创建你的项目 这个项目也是以这个项目为基础改造的 只不过觉得编译速度还是有点慢 就用tsup改写了一下 不过应该还是挺好用的 你可以试试

— Reply to this email directly, view it on GitHubhttps://github.com/1111mp/nvm-desktop/issues/109#issuecomment-2303998685, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AOYWDLK42KGZPIT62CFSDO3ZSWJEPAVCNFSM6AAAAABM5ICEL2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMBTHE4TQNRYGU. You are receiving this because you authored the thread.Message ID: @.***>

1111mp commented 3 weeks ago

我目前在准备写一个基于微前端架构的web端的应用中心的开源项目,项目地址为:https://github.com/1111mp/app-center

大致的功能模块有:

目前核心功能已经实现了 如果有兴趣的话欢迎 pr ,或者一起开发 ❤️

tzwhyqq commented 2 weeks ago

大佬考虑用基于 rust 的Tauri 这个。现在打包后文件好大。基本上都是 [electron]自己的文件内容。

1111mp commented 2 weeks ago

大佬考虑用基于 rust 的Tauri 这个。现在打包后文件好大。基本上都是 [electron]自己的文件内容。

@tzwhyqq 是的 目前已经在用Tauri进行重写了 你可以查看项目的 tauri 分支 目前核心功能都已经实现了 我自己本地也在测试 目前使用 Tauri 打包的体积只有 6 M(安装之后7M,当然前提是系统已经自带了webview2 ) 而Electron的话压缩之后也有100多 安装之后都200M了 (windows上)

如果有兴趣的话欢迎PR 或者一起开发

因为平时上班还是很忙 所以进度有点缓慢 望理解

lsrweb commented 2 weeks ago

不懂 tauri,但是看代码量怎么感觉少了这么多呢

lsrweb commented 2 weeks ago

看了看文档,tauri貌似的写法貌似确实简单啊,一眼丁真感觉比 electron 简单多了

等学一段时间的electron 转tauri image

1111mp commented 2 weeks ago

是的 如果rust掌握的好的话 那么开发桌面端应用肯定是首选Tauri了 我之前也测试了一下 Tauri2.0 的性能确实得到了很大的提升 和Electron比的话也能感受到明显的性能提升(内存占用方面好像反而还多了10M左右 不过差距不大)

还有一个原因就是rust能做的事情太多了 相对于Electron 如果需要调用或者扩展系统层面的api或者功能 那就只能通过 node 的 c++ 扩展来实现了 一来一回 成本就太大了 不过我个人还是喜欢使用 NAPI-RS rust来写node的native扩展

rust 本身的跨平台体验就很好 而且开发的应用稳定性方面特别优秀(错误处理方面的设计)再加上前端也开始往rust方向卷了 所以还是很建议学习一下rust的

lsrweb commented 1 week ago

大佬,我有个疑问,electron如果想给渲染进程抛错误怎么弄, image image image

比如我这里判断如果路径不存在,如何让主进程的报错跑到渲染进程去呢

1111mp commented 1 week ago

直接抛出错误就行 建议使用handle invoke ,然后返回Promise.reject()也行

lsrweb commented 1 week ago

好的好的,明天试试

lsrweb commented 1 week ago

是的,没错,可以直接抛出错误,谢谢

1111mp commented 1 day ago

@lsrweb @tzwhyqq 目前使用tauri重构已经接近尾声了 目前已经发布了一个 alpha 版本:v4.0.0-alpha,可以下载试用一下,windows的安装文件为5.23M,安装过后也11M左右。

目前两个版本(electron & tauri)应该是可以同时安装使用的,使用的都是同一份数据(.nvmd目录下),相互是兼容的,当然使用过程中遇到任何问题都可以随时留言,我看到会第一时间解决,谢谢。

lsrweb commented 1 day ago

噢耶耶耶耶!!!!我直接下载!


发件人: The1111mp @.> 发送时间: 2024年9月12日 9:57 收件人: 1111mp/nvm-desktop @.> 抄送: Lisa Feaster @.>; Mention @.> 主题: Re: [1111mp/nvm-desktop] 这个项目可以弄一个纯净版的脚手架不我觉得蛮不错的 (Issue #109)

@lsrwebhttps://github.com/lsrweb @tzwhyqqhttps://github.com/tzwhyqq 目前使用tauri重构已经接近尾声了 目前已经发布了一个 alpha 版本:v4.0.0-alphahttps://github.com/1111mp/nvm-desktop/releases/tag/v4.0.0-alpha,可以下载试用一下,windows的安装文件为5.23M,安装过后也11M左右。

目前两个版本(electron & tauri)应该是可以同时安装使用的,使用的都是同一份数据(.nvmd目录下),相互是兼容的。

― Reply to this email directly, view it on GitHubhttps://github.com/1111mp/nvm-desktop/issues/109#issuecomment-2345100561, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AOYWDLOP3JRSUJCNJPDPS4LZWDYIRAVCNFSM6AAAAABM5ICEL2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNBVGEYDANJWGE. You are receiving this because you were mentioned.Message ID: @.***>

lsrweb commented 1 day ago

提个小建议:

  1. 汉化的彻底一些,搜索的框pleaceholder,View筛选按钮,主题色title, 也根据语言进行变更,中文界面出现了英文操作控件感觉怪怪的.
  2. 我已经拿应用当成了一个项目管理器,所以可否添加一个点击项目路径直接打开资源管理器的功能

还有个应该是展示问题 在所有版本和已安装页面进行切换的时候,由已安装切换到所有版本,所有版本界面的头部会闪烁出这个加载界面 闪烁速度太快了,感官上不大好 image

1111mp commented 1 day ago

@lsrweb 可以的 这些小问题可能还是因为懒所以一直没优化 后面有时间会优化一下这几个部分 谢谢你 👍

lsrweb commented 1 day ago

@lsrweb 可以的 这些小问题可能还是因为懒所以一直没优化 后面有时间会优化一下这几个部分 谢谢你 👍 我已经拿应用当成了一个项目管理器,所以可否添加一个点击项目路径直接打开资源管理器的项目路径的功能,项目列表比较多,要是可以直接点击项目路径拉起指定路径就太方便了

1111mp commented 1 day ago

@lsrweb 可以的 这些小问题可能还是因为懒所以一直没优化 后面有时间会优化一下这几个部分 谢谢你 👍 我已经拿应用当成了一个项目管理器,所以可否添加一个点击项目路径直接打开资源管理器的项目路径的功能,项目列表比较多,要是可以直接点击项目路径拉起指定路径就太方便了

可以的 这个功能应该很实用 后续会加上这个功能的

lsrweb commented 1 day ago

@lsrweb 可以的 这些小问题可能还是因为懒所以一直没优化 后面有时间会优化一下这几个部分 谢谢你 👍 我已经拿应用当成了一个项目管理器,所以可否添加一个点击项目路径直接打开资源管理器的项目路径的功能,项目列表比较多,要是可以直接点击项目路径拉起指定路径就太方便了

可以的 这个功能应该很实用 后续会加上这个功能的

哦!Thanks♪(・ω・)ノ,这真的太好了,谢谢,非常感谢