使用VerseWebX和pake構建跨平臺的桌面應用程序

介紹
VerseWebX是基于Electron的技術框架,用于構建跨平臺的桌面應用程序。
特點:
跨平臺:可以在 Windows、macOS 和 Linux 等多個操作系統(tǒng)上運行。開發(fā)者只需編寫一次代碼,就可以在不同平臺上構建出相同的應用程序。
基于 Web 技術:使用 Web 技術棧,包括 HTML、CSS 和 JavaScript,使得開發(fā)者可以使用熟悉的前端開發(fā)技能構建桌面應用程序。
強大的功能擴展性:提供了豐富的 API 和插件系統(tǒng),開發(fā)者可以通過調(diào)用底層的操作系統(tǒng)功能和硬件設備來擴展應用程序的功能。
自定義界面:允許開發(fā)者使用 HTML 和 CSS 來創(chuàng)建應用程序的界面,可以靈活地設計和定制用戶界面。
pake是基于Rust的技術框架,可以構建跨平臺的桌面應用程序。
特點:
高性能:它使用零成本抽象、無運行時開銷和優(yōu)化的編譯器,可以生成高效的機器碼,使得打包的應用程序能夠運行得更快。
并發(fā)性:它提供了線程安全的標準庫和異步編程的原生支持,使得打包的應用程序可以更好地利用多核處理器和處理并發(fā)任務。
跨平臺支持:Rust 的編譯器支持多個目標平臺,包括 Windows、macOS、Linux 和嵌入式系統(tǒng)等。這使得打包的應用程序可以在不同的操作系統(tǒng)和硬件上運行。
輕量級:Rust 的運行時依賴非常小,使得打包的應用程序可以保持較小的體積。這對于部署和分發(fā)應用程序非常有優(yōu)勢。
相同:兩者都可以構建基于本地靜態(tài)文件或任意url為程序
不同:VerseWebX我調(diào)整了文件配置,無論你使用什么操作系統(tǒng)都會輸出多平臺程序包,構建完成后會根據(jù)文件后綴自動分類,更利于本地化使用
總的來說,無論VerseWebX還是pake都使得打包應用程序更加方便和高效。
VerseWebX打包URL為桌面程序
安裝
先把源碼下載到本地
git clone https://github.com/rcy1314/VerseWebX
或到
下載運行
一、運行前確保有Node.js環(huán)境,可前往
下載和安裝Node.js。1、安裝所有依賴項
npm install
如果報錯請嘗試sudo npm install
2、安裝Electron Builder:
npm install electron-builder --save-dev
二、項目的根目錄下運行以下命令來執(zhí)行打包操作:
npm run build
或使用
npx electron-builder build
結束,等待運行構建。
https://github.com/rcy1314/VerseWebX
注意:main.js文件內(nèi)包含web url路徑和本地路徑,可根據(jù)需要自行更改,設定的圖標必須是512*512分辨率,如果構建包括linux所有文件類型package-linux.js則需將package-linux.js內(nèi)的代碼替換掉package.js內(nèi)的
PAKE打包URL為桌面程序
安裝
確保您的 Node.js 版本為 16.0 或更高版本(例如 16.8)。避免用于安裝。如果您在使用 npm 時遇到權限問題,請參閱sudo
npm install pake-cli -g
用法
pake [url] [options]
默認情況下,打包的應用程序?qū)⑽挥诋斍肮ぷ髂夸浿小S捎诃h(huán)境配置,第一次打包可能需要一些時間。請耐心等待。
注意:包裝需要生銹環(huán)境。如果未安裝 Rust,系統(tǒng)將提示您進行安裝確認。如果安裝失敗或超時,您可以
。
[網(wǎng)址]
URL 是指向要打包的網(wǎng)頁的鏈接或本地 HTML 文件的路徑。這是強制性的。
[選項]
各種選項可用于定制。您可以在打包過程中傳遞相應的參數(shù)以實現(xiàn)所需的配置。
[姓名]
指定應用程序名稱。如果未提供,系統(tǒng)將提示您輸入。建議使用英語。
--name <value>
[圖標]
指定應用程序圖標。支持本地和遠程文件。默認情況下,它使用 Pake 品牌圖標。有關自定義圖標,請訪問
或 。對于 macOS,請使用格式。
.icns
對于 Windows,請使用格式。
.ico
對于 Linux,請使用格式。
.png
--icon <path>
我的示例:
pake https://noisework.cn name Noise copy-iter-file --icon /Users/noise/Downloads/icon.icns ?show-menu show-system-tray
[高度]
設置應用程序窗口的高度。默認值為 。780px
--height <number>
[寬度]
設置應用程序窗口的寬度。默認值為 。1200px
--width <number>
[透明]
啟用或禁用沉浸式標頭。默認值為 。使用以下命令啟用此功能(僅限 macOS)。false
--transparent
[全屏]
確定應用程序是否全屏啟動。默認值為 。使用以下命令啟用全屏。false
--fullscreen
[多支持]
打包應用程序以支持英特爾和 M1 芯片,專用于 macOS。默認值為 。false
先決條件
注意:啟用此選項后,必須使用 Rust 官方網(wǎng)站上的 rustup 安裝 Rust。不支持通過brew安裝。
對于英特爾芯片用戶,請使用以下命令安裝 arm64 跨平臺軟件包以支持 M1 芯片:
rustup target add aarch64-apple-darwin
對于 M1 芯片用戶,請使用以下命令安裝 x86 跨平臺軟件包以支持英特爾芯片:
rustup target add x86_64-apple-darwin
用法
--multi-arch
[對象]
選擇 Linux 的輸出包格式。選項包括 、 或 。如果選擇 ,則兩者和都將打包。默認值為 。deb``appimage``all``all``deb``appimage``all
--targets <format>
[用戶代理]
自定義瀏覽器用戶代理。默認值為空。
--user-agent <value>
[顯示菜單]
顯示菜單欄。默認值為不顯示。使用以下命令啟用菜單欄。建議 macOS 用戶使用。
--show-menu
[顯示系統(tǒng)托盤]
顯示系統(tǒng)托盤。默認值為不顯示。使用以下命令啟用系統(tǒng)托盤。
--show-system-tray
[系統(tǒng)托盤圖標]
指定系統(tǒng)托盤圖標。這僅在啟用系統(tǒng)托盤時有效。圖標必須采用或格式,并且應該是尺寸范圍為 32x32 到 256x256 像素的圖像。.ico``.png
--system-tray-icon <path>
[復制文件]
啟用遞歸復制。當 URL 是本地文件路徑時,啟用此選項會將包含 URL 中指定的文件的文件夾以及所有子文件復制到 Pake 靜態(tài)文件夾。默認情況下,此功能處于禁用狀態(tài)。
--copy-iter-file
關于PAKE還可以使用github action運行,更詳細的使用說明請訪問:https://github.com/tw93/Pake