Alternative Zalo client built using Rust, Tauri and Pake.
- Lighter than the official Zalo app (in term of program size)
- Faster (probably)
- Never take your storage for granted
- Support Linux (hey someone please test it for me)
- replace Zalo web
- work in any platform without missing crucial feature
- idk
- replace Zalo desktop (there's a guide on installing it on Linux but you try first)
- sync your Zalo messages prior to the login date (I can't fix this aoc)
- be mainstream
- get sued or dmcaed by vng. fuck vng
- Initial release
- Basic modification and other platforms' build
- Adding support for dark mode and such
- ? who knows?
Mac | Windows/Linux | Function |
---|---|---|
⌘ + [ | Ctrl + ← | Return to the previous page |
⌘ + ] | Ctrl + → | Go to the next page |
⌘ + ↑ | Ctrl + ↑ | Auto scroll to top of page |
⌘ + ↓ | Ctrl + ↓ | Auto scroll to bottom of page |
⌘ + r | Ctrl + r | Refresh Page |
⌘ + w | Ctrl + w | Hide window, not quite |
⌘ + - | Ctrl + - | Zoom out the page |
⌘ + + | Ctrl + + | Zoom in the page |
⌘ + = | Ctrl + = | Zoom in the Page |
⌘ + 0 | Ctrl + 0 | Reset the page zoom |
In addition, double-click the title bar to switch to full-screen mode. For Mac users, you can also use the gesture to go to the previous or next page and drag the title bar to move the window.
Pake provides a command line tool, making the flow of package customization quicker and easier. See documentation for more information.
npm install -g pake-cli
pake chat.zalo.me --name Zalo --icons <path/to/icon.ico>
Prepare your environment before starting. Make sure you have Rust >=1.63
and Node >=16
(e.g., 16.18.1
) installed on your computer. For installation guidance, see Tauri documentation.
If you are unfamiliar with these, it is better to try out the above tool to pack with one click.
# Install Dependencies
npm i
# Local development [Right-click to open debug mode.]
npm run dev
# Pack application
npm run build
- Rewrite or change documents to fit the project
- You can refer to the codebase structure before working on Pake, which will help you much in development.
- Modify the
url
andproductName
fields in thepake.json
file under the src-tauri directory, the "domain" field in thetauri.config.json
file needs to be modified synchronously, as well as theicon
andidentifier
fields in thetauri.xxx.conf.json
file. You can select anicon
from theicons
directory or download one from macOSicons to match your product needs. - For configurations on window properties, you can modify the
pake.json
file to change the value ofwidth
,height
,fullscreen
(or not),resizable
(or not) of thewindows
property. To adapt to the immersive header on Mac, changehideTitleBar
totrue
, look for theHeader
element, and add thepadding-top
property. - For advanced usages such as style rewriting, advertisement removal, JS injection, container message communication, and user-defined shortcut keys, see Advanced Usage of Pake.
- Right-clicking on an image element in the page to open the menu and select download image or other events does not work (common in MacOS systems). This issue is due to the MacOS built-in webview not supporting this feature.
- I have two cats, TangYuan and Coke. If you think Pake delights your life, you can feed them some canned food 🥩.
- If you like Pake, you can star it on GitHub. Also, welcome to recommend Pake to your friends.
- You can follow my Twitter to get the latest news of Pake or join our Telegram chat group.
- I hope that you enjoy playing with it. Let us know if you find a website that would be great for a Mac App!
- Star this project
- Give me some ideas to test with
- Help me to build Linux and macOS binaries. I don't have any of these devices.