I wanted to share a tool I’ve been working on to make deploying Safe vanity addresses easier and more accessible.
While vanity addresses are useful for cross-chain consistency and professional appearance, existing tools often require setting up complex CLI environments (Python/CUDA) or having specific hardware.
How it works: PrettySafe leverages WebGPU technology to bring mining performance directly to the browser. By using WGSL shaders, we can achieve near-native performance inside Chrome or Edge without requiring any local installation or specific GPU hardware (like an Nvidia 4090).
Key Features:
Client-Side Security: The generation happens entirely on your local hardware. Private keys and seeds are never transmitted to a server.
Zero Setup: No Python or Node environments required. No CUDA, no 4090/5090, no setup, just visit a webpage and begin mining using your device.
Cross-Platform: Works on Windows, Mac, and mobile devices that support WebGPU.
Connect and deploy: if you connect an in-browser wallet (e.g. MetaMask chrome extension) you can deploy directly from this webapp.
Open Source: This is a public good project licensed under MIT. You can review the source code or run it locally here: github.com/xinbenlv/prettysafe
I’d appreciate any feedback on the implementation or the UX.
Best, Xinbenlv
Note to moderators: A previous version of this post was automatically flagged as spam. I have discussed this with Andre, who cleared the issue, and I am reposting this revised version to better align with forum standards. This is a fully open-source public good for the Safe ecosystem.
Hi @JOY — thanks for checking out PrettySafe and engaging on the Safe forum. I built this to make vanity address generation truly browser‑native with WebGPU, so anyone can mine directly in Chrome/Edge without Python/CUDA or specific GPUs. It’s fully client‑side (keys never leave the device), cross‑platform, and open‑sourced under MIT.
On patterns: we can definitely support prefix/postfix zeros or any number, and in fact arbitrary formats (e.g., 0xdeadbeef…). It’s mostly a tradeoff between flexibility and simplicity/performance, since broader pattern matching can add complexity or reduce throughput.
I’d love your input on which vanity patterns matter most. Do you—and others—want specific sets beyond zeros (e.g., word prefixes, checksum‑friendly endings, symmetry, ENS‑aligned fragments)? Ideally, could you share examples of existing wallets/contracts using those patterns, so we can prioritize the UX and shader configuration accordingly.
If you’re up for it, feedback on:
UX flows: start/stop mining, target pattern configuration, and deploy‑via‑wallet steps.
Security review: WGSL shaders, key handling, and browser edge cases.
Performance: device/driver results, hash rates, and thermal behavior across OS/GPU.
Web app: PrettySafe. Source and local run: GitHub - xinbenlv/prettysafe. Happy to iterate quickly based on your findings and document best practices for the Safe community.
Something like this. I’m not a developer so cannot feedback on tech side.
But since we can use 1 wallet address for all EVM chains that Safe supports, why do you let user pick each chain? That UX is messy.
Got it, we probably will focus on the single sided vanity mining for now. If we get more feedback on this kind of more flexible mining is demanded we will consider it.