Skip to content

feat(connector): add Chipi connector to default connectors#263

Open
haycarlitos wants to merge 3 commits into
argentlabs:developfrom
haycarlitos:feat/chipi-connector
Open

feat(connector): add Chipi connector to default connectors#263
haycarlitos wants to merge 3 commits into
argentlabs:developfrom
haycarlitos:feat/chipi-connector

Conversation

@haycarlitos

Copy link
Copy Markdown

Summary

Adds a "Connect with Chipi" connector to the default connectors. Chipi is a hosted smart-account wallet (passkey auth, gasless via a paymaster) following the same hosted model as the Ready and Cartridge connectors already in Starknetkit. It lets any Starknetkit dApp offer Chipi alongside the existing wallets.

How it works

The connector wraps the published @chipi-stack/starknet-connector transport. It opens the hosted wallet (connect.chipipay.com) in a popup and forwards get-starknet wallet_* RPC over postMessage; it holds no keys and signs nothing itself. The hosted wallet renders the approval UI and runs the real passkey + paymaster path.

  • src/connectors/chipi/index.tsChipiConnector extends StarknetkitConnector. account() builds a starknet WalletAccount over the postMessage StarknetWindowObject, mirroring the webwallet connector. It self-registers on window in its constructor so getAvailableWallets() marks it installed (otherwise the modal routes a hosted wallet to the download screen) — the same approach the Cartridge connector relies on.
  • src/connectors/chipi/constants.ts — the brand icon.
  • src/helpers/defaultConnectors.ts — added next to ControllerConnector.
  • Dependency: @chipi-stack/starknet-connector ^0.1.2.

Testing

  • pnpm build and pnpm check pass with no new errors (the few pre-existing check errors are in unrelated files).
  • Verified end to end on mainnet through the Starknetkit modal: select "Connect with Chipi" → connect → signTypedData (SNIP-12) → a gasless execute returning a tx hash, with Braavos working alongside in the same modal.

Happy to adjust naming, icon, or placement to fit your conventions.

haycarlitos and others added 3 commits June 18, 2026 19:39
Adds a "Connect with Chipi" connector. Chipi is a hosted smart-account wallet
(passkey, gasless via paymaster) following the same hosted model as the Ready and
Cartridge connectors. It wraps the published @chipi-stack/starknet-connector
transport: the connector opens the hosted wallet (connect.chipipay.com) in a
popup and forwards get-starknet wallet_* RPC over postMessage; it holds no keys.

- src/connectors/chipi: ChipiConnector (extends StarknetkitConnector) + icon.
  account() builds a starknet WalletAccount over the postMessage SWO, mirroring
  the webwallet connector. Self-registers on window so getAvailableWallets marks
  it installed (otherwise the modal routes it to the download screen).
- Added to defaultConnectors() next to the controller connector.
- Dependency: @chipi-stack/starknet-connector ^0.1.2.

Build + check pass (no new errors). Verified end to end on mainnet through the
starknetkit modal: connect, signTypedData, and a gasless execute, alongside
Braavos.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The Chipi hosted wallet authenticates on the wallet.chipipay.com domain, so that
is the working host. Updates the connector dep to ^0.1.3 (whose own default also
points there).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ew-user)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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.

1 participant