Try Cascade
Edit your Lukso Universal Profile right from the docs and watch the LSP-3 metadata land permanently on Cascade.
The Demo page lets you update your real Universal Profile on Lukso mainnet. Every field you fill in becomes either a JSON value (links, tags) or a Cascade-stored asset (images, 3D avatar) referenced from a hash-bound LSP-2 VerifiableURI written to your UP via setData.
Nothing in the demo is a sandbox; the transactions are real, the Cascade actions are real. The dApp does the same thing the Universal Profile tutorial walks through step-by-step, just wrapped in a UI.
You'll need the Universal Profile Browser Extension connected to a UP that holds at least a few millilyx for gas. If you change your mind mid-flow, just close the extension popup, no transaction is sent until you approve it.
What happens when you click "Save to Cascade"
- Resizes your profile image to 256/512/1024px in the browser, then uploads each variant plus the source image to the cascade-api at
api.lumera.help/upload. - Uploads the background image and 3D avatar (if provided) the same way.
- Builds a single LSP-3 JSON document that references every Cascade URL with per-asset
verification.{method, data}(a keccak256 of the file bytes). - Uploads that JSON to Cascade as well.
- Encodes a
VerifiableURIover(JSON hash, JSON URL)using@erc725/erc725.js. - Calls
setData(LSP3Profile, value)on your UP. The browser extension prompts for the signature; once mined, your profile is updated.
Every Cascade upload becomes its own action on lumera-testnet-2 with its own tx_hash, all listed in the ledger panel of the demo.
Source
- The embedded component lives at
components/lukso-try-cascade/in the docs repo. - A standalone Next.js version (with a server-side bearer-token proxy instead of browser-direct uploads) lives at github.com/kaleababayneh/permanent-up.