igrantio-issuer-frontendlisted
Install: claude install-skill L3-iGrant/skills
# iGrant.io issuer frontend (OpenID4VCI)
## When to use
Build the issuer-side UI: a user requests a credential, scans a QR (or taps a
same-device deep link), and the page updates the instant the wallet accepts.
Depends on `igrantio-frontend-client` (vendored at `src/lib/ows/`) and an
`igrantio-issuer-backend` deployment. Verifier UI is a separate skill
(`igrantio-verifier-frontend`).
**Before you build**: run the integrator intake in `igrantio-ows-overview` - environment, API key, tenancy, backend host, webhooks, frontend - one question at a time, a recommended default with each.
## What it provides
- **`useIssuance({ proxyBaseUrl, webhookBaseUrl })`** →
`{ status, offerUri, credentialExchangeId, error, issueInTime, issueDeferred, reset }`.
- `issueInTime(payload)` - claims known now.
- `issueDeferred(startRequest, claims)` - create the offer now; the hook pushes
the claims automatically on the `offer_received` webhook.
- `status`: `idle → offer_ready → scanned → issued` (or `error`).
- **`IssuerFlow`** - a minimal end-to-end demo component.
## Flow (what happens)
1. `POST …/credential/issue` → read `credentialHistory.CredentialExchangeId`
(SSE key) and `credentialHistory.credentialOffer` (QR URI).
2. Open SSE on the exchange id; render the QR / same-device button. For the
full QR panel (optional centre logo, green tick on scan, refresh,
open-in-wallet button, tx-code block) use `igrantio-qr-code` - it asks the
integrator about the logo and tick op