Skip to content

Feat/sdk vue adapter#273

Open
Aboyeji-Isaac wants to merge 3 commits into
Miracle656:mainfrom
Aboyeji-Isaac:feat/sdk-vue-adapter
Open

Feat/sdk vue adapter#273
Aboyeji-Isaac wants to merge 3 commits into
Miracle656:mainfrom
Aboyeji-Isaac:feat/sdk-vue-adapter

Conversation

@Aboyeji-Isaac
Copy link
Copy Markdown

Closes #173

  • Extracts framework-agnostic wallet logic into sdk/src/core/InvisibleWalletCore.ts
  • Adds sdk/vue/@veil/invisible-wallet-vue package with useInvisibleWallet Vue 3 composable
  • Adds runnable Vite + Vue 3 example app at sdk/src/examples/vue/ (register, login, deploy, send)
  • sdk/vue/dist/ is gitignored — build output is not committed

@Aboyeji-Isaac Aboyeji-Isaac requested a review from Miracle656 as a code owner June 1, 2026 12:41
@vercel
Copy link
Copy Markdown

vercel Bot commented Jun 1, 2026

@Aboyeji-Isaac is attempting to deploy a commit to the miracle656's projects Team on Vercel.

A member of the Team first needs to authorize it.

@drips-wave
Copy link
Copy Markdown

drips-wave Bot commented Jun 1, 2026

@Aboyeji-Isaac Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

Copy link
Copy Markdown
Owner

@Miracle656 Miracle656 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the Vue adapter — a framework-agnostic adapter is genuinely wanted, and the sdk/vue/ package + example app look well-structured.

The blocker is sdk/src/core/InvisibleWalletCore.ts — this PR introduces an 882-line parallel reimplementation of the wallet core, including the WebAuthn signAuthEntry / sigVec assembly that feeds the contract's __check_auth. That signing path has six non-obvious correctness requirements (custom-account host-fn invocation, low-S normalization, signature expiration, footprint via re-simulation, sequence handling, and exact sigVec length), and a second implementation that can silently drift from the canonical one in useInvisibleWallet.ts is a real security/maintenance risk.

Could you restructure so the Vue adapter consumes the existing core logic rather than duplicating it? If a framework-agnostic core extraction is the goal, that's a worthwhile change but it should be its own focused PR (factoring useInvisibleWallet into a shared core that both React and Vue import — not a fork of it), so the signing path stays single-sourced and can get a dedicated security review. Happy to review that core-extraction PR separately. Moving this one to changes-requested in the meantime.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add Vue 3 adapter for invisible-wallet-sdk

2 participants