Goblin
Goblin is a private, mobile-first payments app for Grin. Think Cash App, but the money is Grin, the addresses are usernames, and the whole conversation rides an anonymizing mixnet.
You send to @alice, not to a 90-character address. You tap Pay, hold to confirm, and a Grin payment travels end-to-end encrypted over the Nostr network and the Nym mixnet, so no relay, no network observer, and no chain analyst can tie the sender to the receiver.

Under the hood Goblin stands on three pillars:
| Pillar | What it gives Goblin |
|---|---|
| GRIM | A complete, audited Grin wallet + node engine: seed, sync, and the Mimblewimble slatepack transaction machinery. Goblin forks it and keeps it. |
| Nostr | The messaging layer. Usernames, encrypted payment messages (gift-wrapped slatepacks), and offline delivery, all without running our own bespoke server. |
| Nym | The transport. Every byte Goblin sends, relay traffic and every HTTP request, goes through a 5-hop mixnet. Nothing touches the clear net. |
How to read these docs
The docs are organized from the outside in:
- Overview: what Goblin is and how the pieces fit.
- Pillars: the three foundations (GRIM, Nostr, Nym), each broken into its component parts.
- Features: the things you actually do: pay, request, claim a name, onboard.
- Subsystems: the smaller machinery: themes, avatars, QR, localization, security.
- Operating Goblin: run your own name authority, relay, and mixnet exit; build from source.
Every component page follows the same shape:
Summary: one paragraph, what it is. Motivation: why it exists, the problem it solves. How it works: a plain-language walkthrough, with screenshots. Reference: the technical detail: types, functions, wire formats. References: links into the source (
file:line) and the external standards.
Goblin is open source. Where these docs cite code, they point at the public source tree so you can read along.