File: README.md
Clash Nyanpasu
A [Clash](https://github.com/Dreamacro/clash) GUI based on [Tauri](https://github.com/tauri-apps/tauri).
Features
- Built-in support Clash Premium, Mihomo, Clash Rust & Meow.
- Profiles management and enhancement (by YAML, JavaScript & Lua). Doc
- Provider management support.
- Google Material You Design UI and animation support.
Preview
Links
Development
Configure your development environment
You should install Rust and Node.js, see here for more details.
Clash Nyanpasu uses the pnpm package manager. See here for installation instructions. Then, install Node.js packages.
pnpm iDownload the Clash binary & other dependencies
# force update to latest version
# pnpm prepare:check --force
pnpm prepare:checkRun dev
pnpm dev
# run it in another way if app instance exists
pnpm dev:diffBuild application
pnpm buildContributions
Issue and PR welcome!
Acknowledgement
Clash Nyanpasu was based on or inspired by these projects and so on:
- zzzgydi/clash-verge: A Clash GUI based on Tauri. Supports Windows, macOS and Linux.
- clash-verge-rev/clash-verge-rev: Another fork of Clash Verge. Some patches are included for bug fixes.
- tauri-apps/tauri: Build smaller, faster, and more secure desktop applications with a web frontend.
- Dreamacro/clash: A rule-based tunnel in Go.
- MetaCubeX/mihomo: A rule-based tunnel in Go.
- Watfaq/clash-rs: A custom protocol, rule based network proxy software.
- madeye/meow-rs: A high-performance Rust implementation of the mihomo (Clash Meta) proxy kernel.
- Fndroid/clash_for_windows_pkg: A Windows/macOS GUI based on Clash.
- vitejs/vite: Next generation frontend tooling. It's fast!
- mui/material-ui: Ready-to-use foundational React components, free forever.
Contributors
License
GPL-3.0 License. See License here for details.
File: backend/tauri-plugin-deep-link/README.md
Deep link plugin for Tauri
This plugin will be migrated to https://github.com/tauri-apps/plugins-workspace/. 0.1.2 will be the last release in this repo.
Temporary solution until https://github.com/tauri-apps/tauri/issues/323 lands.
Depending on your use case, for example a Login with Google button, you may want to take a look at https://github.com/FabianLars/tauri-plugin-oauth instead. It uses a minimalistic localhost server for the OAuth process instead of custom uri schemes because some oauth providers, like the aforementioned Google, require this setup. Personally, I think it's easier to use too.
Check out the example/ directory for a minimal example. You must copy it into an actual tauri app first!
macOS
In case you're one of the very few people that didn't know this already: macOS hates developers! Not only is that why the macOS implementation took me so long, it also means you have to be a bit more careful if your app targets macOS:
- Read through the methods' platform-specific notes.
- On macOS you need to register the schemes in a
Info.plistfile at build time, the plugin can't change the schemes at runtime. - macOS apps are in single-instance by default so this plugin will not manually shut down secondary instances in release mode.
- To make development via
tauri deva little bit more pleasant, the plugin will work similar-ish to Linux and Windows in debug mode but you will see secondary instances show on the screen for a split second and the event will trigger twice in the primary instance (one of these events will be an empty string). You still have to install a.appbundle you got fromtauri build --debugfor this to work!
- To make development via