Stripe / RevenueCat for native Rust desktop apps
A drop-in licensing crate, Merchant-of-Record checkout, and a scripted codesign →
notarize → publish pipeline. Sell your Bevy / egui / winit app without building any of it
yourself.
Prefer the hosted control plane? Join the waitlist:
Early access to the hosted plan + the launch playbook. No spam; unsubscribe anytime.
the part nobody tells you about
Every paid native app re-solves the same three problems by hand.
- 01
Licensing is a security minefield
License keys, machine activation, and a fail-closed offline grace window are fiddly to get right — and easy to ship insecure.
- 02
Payments mean tax compliance
Selling worldwide drags in VAT, sales tax, and reporting. Get it wrong and it’s your problem, not your customer’s.
- 03
Shipping macOS is a gauntlet
Developer ID signing, notarization, stapling, and a CDN stand between your build and a download users will actually open.
what you get
Three pillars, composed — not three projects.
licensing
Licensing that just works
A Rust crate validates keys, node-locks the machine, and keeps working offline within a grace window. One build runs locked (free demo) and unlocks at runtime when a license validates — no separate demo binary, no recompile.
checkout
Get paid, skip the tax
Sell through a Merchant-of-Record (you bring Paddle): VAT and sales tax handled worldwide. A webhook mints a license key on purchase and revokes it on refund. You never touch billing or tax.
distribution
Ship signed & notarized
One command (or a GitHub Action) builds → codesigns → notarizes → staples → publishes your .dmg to a CDN. The Apple gauntlet, scripted.
Scaffold a new monetized app in ~8 config values.
how it works
Three steps. One small diff.
The licensing core is a runtime gate — add the plugin, check unlocked(),
ship. No second “pro” build to maintain.
// 1. add the crate, gate paid features at runtime
app.add_plugins(LicensingPlugin::keygen(config));
if licensed.unlocked() { /* paid feature */ }
-
Add the crate, gate paid features
Drop in the licensing plugin and guard paid code paths behind a runtime check. One binary ships as a free demo and unlocks when a key validates.
-
Connect your Paddle account
Purchases become license keys automatically via webhook; refunds revoke them. You stay the Merchant-of-Record — tax handled, money never touches us.
-
Run release.sh
Build → codesign → notarize → staple → publish. Out comes a signed, notarized download. Done.
why trust it
Born from a shipping app.
Rustify is extracted from LATTICE, a real macOS Rust app already selling
through this exact stack. The gotchas — keygen’s license-auth scheme, fail-closed offline
grace, Apple notarization — are already hit, debugged, and shipping. macOS today; Windows
& Linux next.
- You keep your own Paddle + Apple accounts — Rustify never touches your money or your signing keys.
- Fail-closed offline grace, keygen license-auth, and Apple notarization are already debugged in production.
shipping today
Real, paid apps already run on this stack.
Rustify is the licensing, checkout, and distribution stack pulled straight out of shipping
apps — not a prototype. These two take real money on macOS today, on the exact pieces you'd
otherwise build by hand.
Each one licenses, gets paid, and ships signed on the exact stack Rustify packages — so you
don't rebuild it.
who it’s for
Indie Rust devs and small studios shipping native apps.
- Bevy
- egui
- winit
- Slint
- Iced
- Dioxus
- GTK-rs
- Tauri-adjacent
The licensing core is framework-agnostic — thin adapters wire it into
whatever you render with. If it’s a native Rust GUI, it fits.
questions
FAQ
Which frameworks does it support?
Any native Rust GUI. The licensing core is framework-agnostic; thin adapters cover Bevy, egui, winit, Slint and friends.
Do you take a cut of my revenue?
No. You bring your own Merchant-of-Record (Paddle); Rustify never touches your money. We’re tooling, not a payment processor.
What platforms can I ship to?
macOS first (Apple Silicon proven, end to end). Windows and Linux are on the roadmap.
Do I need my own Apple and Paddle accounts?
Yes — you stay the seller and own those relationships. Rustify wires them together; it doesn’t sit between you and your customers.
When can I use it?
Drop your email. Early-access invites go out as it’s ready, newest signups included.
New native Rust app → monetized, licensed, distributable — in ~a day.
Get early access and the launch playbook. No spam; unsubscribe anytime.