FRAME TRANSACTIONS, SIMPLIFIED
One client.
Every frame.
A familiar developer experience for native account abstraction. Prepare, sign, and send EIP-8141 transactions with a few typed viem actions.
Made for your stackviemTS TypeScriptEIP-8141
A clearer transaction lifecycle
FROM INTENT TO INCLUSION01PrepareBuild the envelope
02SignAuthorize locally
03SubmitEnter the sidecar
04InspectUnderstand the result
Your client, with frame superpowers.
Client referenceKeep viem’s transport and public actions. Add an explicit frame lifecycle on top of the workshop’s existing codec.
framepay.ts
// Extend your viem client with native frame actions.const client = publicClient.extend( frameActions({ profile: 'ethrex-eip8141-tracer' }),);const signed = await client.signFrameTransaction({ transaction, signer,});const hash = await client.sendFrameTransaction({ transaction: signed,});const receipt = await client.waitForFrameReceipt({ hash });This excerpt assumes a configured client, prepared transaction, and signer. Follow the full quickstart.
Small surface. Useful primitives.
A focused developer preview
The current SDK targets the local ethrex workshop profile. Provider sponsorship quotes, PQ accounts, and pre-submission simulation are on the roadmap.