PakePlus: Turn a Web Page into a Desktop or Mobile App with Tauri
Turn any webpage/HTML/Vue/React and so on into desktop and mobile app under 5M with easy in few minutes. 轻松将任意网站/HTML/Vue/React等项目构建为轻量级(小于5M)多端桌面应用和手机应用仅需几分钟. https://ppofficial.netlify.app
At a glance
- What is it?
- PakePlus (also called PacBao) wraps a URL or a built Vue/React dist folder into a Tauri-based client for Mac, Windows, Linux, Android and iOS, with packaging driven from GitHub Actions or a local build. Here is what the repository documents, where it stops, and who should not use it.
- Who is it for?
- Adopt PakePlus if you already have a web page or a built dist folder and want a Tauri shell for desktop and mobile without maintaining Rust toolchains, and if you accept that the front-end code is no longer open source. Do not adopt it if you need a fully auditable, reproducible build from source, if your app depends on deep native platform APIs, or if you cannot tolerate a project whose packaging path runs through GitHub Actions and a personal access token.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 29 days ago.
- What is it written in?
- Mainly HTML, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 30, 2026, and from our analysis. They are not legal advice.
Editorial analysis
What PakePlus is for, and who it is not for
PakePlus solves a narrow problem: you have something that already runs in a browser, and you want it to run as an installed application instead. The README lists the cases it targets: a website you want to ship as a client, a Vue or React project you do not want to host on a server, a Cocos or Unity build, an internal company platform you want reachable only through a dedicated client, or a page whose ads you want to strip with injected JavaScript. The name PacBao appears alongside PakePlus in the README, and the two are used interchangeably there.
The intended user is someone who does not want to set up a Rust or Tauri toolchain. The README states that no complex local dependencies are needed and that packaging can run in the cloud through GitHub Actions, with a single GitHub token. That is the whole pitch: a web page in, a small native shell out.
It is the wrong tool when the application is not fundamentally a web page. A Tauri shell gives you a webview and a set of plugins. If your product needs deep platform integration that the plugin list does not cover, you are building the native layer yourself anyway, and the value of the wrapper drops sharply. The repository's own plugin dependencies (clipboard, dialog, fs, http, notification, opener, os, process, shell, store, updater, window state) define the boundary of what comes for free.
How the Tauri shell and the build pipeline fit together
The repository layout tells most of the story. There is a Vue 3 front end (vite.config.ts, index.html, src-tauri/, pnpm-workspace.yaml), a docs site built with VitePress, a pwa/ directory, a fastlane/ directory for mobile store delivery, and a scripts/ directory. The package.json scripts show the two halves directly: tauri:dev, tauri:build and tauri:debug drive the native side, while dev, build and preview drive the web side with vue-tsc and Vite.
The packaging model is that the GitHub workflow in .github/ performs the Tauri build on a runner rather than on your machine, which is why the README can claim that no local dependencies are needed. Your token lets the tooling act on your repository. The README states that the token is stored only locally and that the project stays in your own Git repository. That is a claim about storage location, not a security audit, and it is worth reading the guide before handing over a token with broad scope.
The mobile path is separate from the Tauri path. The README says native frameworks are used to package Android and iOS apps, described as smaller and faster than Tauri 2, and the fastlane/ directory is consistent with store delivery. The README does not document how that native mobile packaging is wired, so treat mobile as the less documented half of the project.
On size, the README claims the result is under 5MB and roughly 20 times smaller than Electron. Those are the project's own numbers; the README does not show the measurement method, and a bundle that includes a webview dependency will vary by platform, so treat the figure as a target rather than a guarantee.
Installing PakePlus and packaging a page for the first time
The README points to the release page for the latest version and to the web app at pakeplus.pages.dev, and it says the client offers stronger functionality than the web version. The repository is a pnpm workspace, so the local path starts with pnpm. The scripts below are copied from package.json.
Install dependencies and start the desktop shell in development mode:
pnpm install
pnpm run tauri:devpnpm run tauri:dev maps to tauri dev, which builds and launches the desktop window with the Vue front end attached. You should see the PakePlus interface rather than a packaged app.
If you only want the web interface locally, the web scripts are separate:
pnpm run devdev maps to vite, and build maps to vue-tsc --noEmit && vite build, which type-checks before bundling. To produce a release build locally instead of through GitHub Actions, the repository exposes:
pnpm run tauri:buildA debug build, useful when you need symbols or verbose output, is pnpm run tauri:debug, which maps to tauri build --debug. Icons are generated with pnpm run icon (tauri icon) or pnpm run appleIcns for the macOS icns path.
The .env.example file lists the configuration keys the front end expects, including VITE_GITHUB_TOKEN_PREFIX, VITE_GITHUB_DOMAIN, VITE_FILE_LIMIT_SIZE=5 and VITE_FILE_LIMIT_NUMBER=20. The two file limits are the ones that matter for static packaging: the README says you can drop in a compiled dist folder or an index.html from Vue or React, and those keys bound how much you can upload. The README does not explain how the file limit is enforced, so check the guide if you plan to ship a large dist.
The front end is no longer open source
This is the constraint that matters most for anyone evaluating PakePlus for a company. The README carries a notice: because individuals used the project to package illegal software, the front-end code will no longer be open source, and if the behavior recurs, all code in the project will cease to be open source. The repository is MIT licensed, but the README is explicit that the front end is not part of what you can read.
That creates a real gap between the licence and the artifact. MIT on the repository does not tell you what the shipped front end contains, and the README does not document which parts remain readable or how the published binaries relate to the visible source. If your adoption process requires building from auditable source, this is a blocker, not a caveat. If you are an individual shipping a personal client, it is a trade-off you may accept.
The note also means the project's openness is conditional on user behavior. That is an unusual governance position: the maintainer has stated that a future misuse could change the licence status of everything. Plan for the possibility that the terms you adopt under are not the terms you keep.
PakePlus compared with Pake and with plain Tauri
Pake is the closest relative. The search data shows people comparing the two directly. Both aim at the same outcome, a small native shell around a web page, and PakePlus's README describes itself as a minimalist tool that replaces traditional packaging with Tauri, which is the same territory. The practical difference visible here is the workflow: PakePlus puts weight on cloud packaging through GitHub Actions and on a graphical interface, including a web version, so a user without a Rust toolchain can produce a build. Pake's own repository and documentation are not described in the README, so the comparison stops at the workflow level.
Plain Tauri is the other alternative, and it is the honest one. Tauri gives you the same webview shell with full control over the Rust side, the plugin set, the capabilities and the build configuration. PakePlus is a preconfigured Tauri application with a UI on top, plus a native mobile path the README describes as separate from Tauri 2. Choosing plain Tauri costs you setup time and Rust knowledge; choosing PakePlus costs you control over the front end and the packaging pipeline. If your team already builds Tauri apps, PakePlus is mostly a convenience layer. If nobody on the team has touched Rust, PakePlus is the shorter route to a first build.
Maintenance, releases and what upgrading costs
The repository is not archived and the last push was on 2026-09-01, so it is current. Releases are frequent and small: PakePlus-v2.2.6 on 2026-05-25, v2.2.7 on 2026-05-30, and v2.2.8 on 2026-06-15, matching the version in package.json. The cadence suggests incremental fixes rather than long release trains, and the changelogs are not included in the README, so read them on the release page before upgrading.
Upgrade cost depends on which layer you depend on. If you use the published client and cloud packaging, upgrades are the maintainer's problem. If you build locally, you inherit the Tauri 2 and plugin version bumps in package.json, and the repository provides two escape hatches for that: pnpm run "update tauri", which runs cargo update inside src-tauri, and pnpm run rm:cache, which deletes ~/.cargo/.package-cache when the Cargo cache misbehaves. Those two scripts are the clearest signal that dependency churn is a real operational concern for local builders.
The licence is MIT, and the README's notice about the front end sits alongside that licence rather than replacing it. This is not legal advice: if you redistribute a build, have someone confirm what MIT covers here and what the front-end restriction means for your distribution, because the README does not spell out the boundary.
Editorial conclusion
Adopt PakePlus if you already have a web page or a built dist folder and want a Tauri shell for desktop and mobile without maintaining Rust toolchains, and if you accept that the front-end code is no longer open source. Do not adopt it if you need a fully auditable, reproducible build from source, if your app depends on deep native platform APIs, or if you cannot tolerate a project whose packaging path runs through GitHub Actions and a personal access token. Before committing, check the guide at pakeplus.com/guide and the release page for the current version, and confirm which parts of the front end you can actually read.
Frequently asked questions
What is the difference between Pake and PakePlus?
Both produce a small native shell around a web page. PakePlus emphasises packaging through GitHub Actions and a graphical interface, including a web version, so no local Rust toolchain is required; Pake's internals are not described in the PakePlus README, so the comparison is limited to that workflow difference.
Does PakePlus support Android and iOS?
Yes. The README says PacBao supports Mac, Windows, Linux, Android and iOS, and that mobile apps are packaged with native frameworks rather than Tauri 2. The README does not document how that native mobile packaging works.
Is PakePlus open source?
The repository is MIT licensed, but the README states that the front-end code will no longer be open source because the project was used to package illegal software, and that further misuse could end open sourcing for the whole project.
How do I build PakePlus locally?
The package.json scripts provide pnpm run tauri:dev for a development desktop window, pnpm run tauri:build for a release build, and pnpm run tauri:debug for a debug build. The README also describes a local packaging path that does not require a GitHub token.
Do I need a GitHub token to use PakePlus?
For cloud packaging through GitHub Actions, the README says one GitHub token is all you need, and that the token is stored only locally. The README also states that local packaging works without a token.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/sjj1024-pakeplus)