← ClaudeAtlas

igrantio-frontend-clientlisted

Generic, dependency-free browser client for the iGrant.io Organisation Wallet Suite (OWS): a typed fetch client for EUDI Wallet (EUDIW) credential issuance (OpenID4VCI) and verification (OpenID4VP) via your tenant backend proxy, a Server-Sent-Events consumer (EventSource + consume-and-delete + reconnect), and optional React hooks (useSSE, useOwsClient, credential/ verification history) plus QR/deep-link helpers. No @igrant/* SDK. Use as the shared frontend foundation for igrantio-issuer-frontend and igrantio-verifier-frontend.
L3-iGrant/skills · ★ 0 · Web & Frontend · score 73
Install: claude install-skill L3-iGrant/skills
# iGrant.io frontend client (generic, no SDK) ## When to use The shared frontend building block for any OWS integration. `igrantio-issuer-frontend` and `igrantio-verifier-frontend` both build on it. It replaces the internal `@igrant/usecase-sdk` / `igrant-api-lib` with self-contained, framework-agnostic code you own. Read `igrantio-ows-overview` for the endpoint/response contract. **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 Framework-agnostic core (only `fetch` + `EventSource`): - **`createOwsClient({ baseUrl, apiKey? })`** - typed methods: - `issuance.issueInTime`, `issuance.startDeferred`, `issuance.completeDeferred`, `issuance.readHistory`, `issuance.deleteHistory` - `verification.sendRequest`, `verification.readHistory`, `verification.deleteHistory` - `baseUrl` = your backend proxy (`https://host/ows/<tenant>`); leave `apiKey` empty (the backend injects it). - **`openSseSession({ webhookBaseUrl, exchangeId, onMessage })`** - EventSource session with consume-and-delete and reconnect; returns `{ close }`. - **`types.ts`** - request/response + SSE event types. React layer (peer deps: `react`, and `qrcode` for `QrCode`): - **`useSSE()`** → `{ open, close }` - **`useOwsClient(baseUrl, apiKey?)`** - memoised client - **`useCredentialHistory` / `useVerificationHistory`** - optional polling