npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@chipi-stack/starknet-connector

v0.1.4

Published

"Connect with Chipi" — a starknet-react / get-starknet connector that lets any Starknet dApp connect to a Chipi hosted smart-account wallet (passkey, gasless). No browser extension, no WalletConnect.

Readme

@chipi-stack/starknet-connector

"Connect with Chipi" — a starknet-react / get-starknet connector that lets any Starknet dApp connect to a Chipi hosted smart-account wallet (passkey, gasless via paymaster). No browser extension, no WalletConnect — the same model Argent/Ready's "Web Wallet" and Cartridge Controller use.

npm install @chipi-stack/starknet-connector

Use it

Add one connector to your StarknetConfig:

import { StarknetConfig, publicProvider } from "@starknet-react/core";
import { mainnet } from "@starknet-react/chains";
import { ChipiConnector } from "@chipi-stack/starknet-connector";

const connectors = [
  new ChipiConnector(),        // "Connect with Chipi"
  // ...your other connectors (argent(), braavos(), ...)
];

export function App({ children }) {
  return (
    <StarknetConfig chains={[mainnet]} provider={publicProvider()} connectors={connectors}>
      {children}
    </StarknetConfig>
  );
}

That's it. Your existing useConnect / useAccount flow now offers "Connect with Chipi", and account.signMessage(...) / account.execute(...) route to the user's Chipi wallet — gasless, signed with their passkey.

How it works

your dApp                         Chipi hosted wallet (wallet.chipipay.com)
─────────                         ──────────────────────────────────────────
ChipiConnector.connect()
   └─ opens a popup ───────────►  /connect  (the user's authenticated wallet)
   └─ postMessage  ◄──────────►   approval UI (passkey + gasless paymaster)
account.execute(calls)
   └─ wallet_addInvokeTransaction ─► user approves ─► sponsored tx ─► tx hash
  • The connector is transport only — it opens the hosted wallet in a popup and forwards get-starknet wallet_* RPC calls over postMessage. It holds no keys and signs nothing itself.
  • The hosted wallet renders a decoded approval for every sign/execute (it shows the actual intent — token, amount, spender — and hard-blocks typed data it can't read), then runs the real passkey + paymaster path.
  • account() wraps the channel in a starknet.js WalletAccount, so the dApp uses a standard AccountInterface.

Options

new ChipiConnector({
  walletUrl: "https://wallet.chipipay.com", // hosted wallet base URL (default)
  id: "chipi",                                // connector id
  name: "Connect with Chipi",                 // display name
  icon: "data:image/svg+xml;base64,...",      // display icon
  register: true,                             // self-register on window (default)
});

Compatibility

  • @starknet-react/core >= 3 (peer) · tested against 5.x
  • starknet >= 8.1.2 (peer) — WalletAccount.connect is identical across 8/9
  • Starknet mainnet (v1). The wallet is mainnet-only.

Discovery

Instantiating the connector also self-registers the wallet on window (window.starknet_chipi + a starknet:announceWallet event — the get-starknet / Starknet-Wallet-Standard discovery path), so dApps that scan for wallets find "Connect with Chipi" even if they don't import this package — the same mechanism Cartridge Controller uses. Pass register: false to opt out (e.g. to avoid a duplicate entry in a picker that already lists the connector explicitly). It's a no-op during SSR. You can also call registerChipiWallet(swo) directly.

Notes / limits (v1)

  • Popup-based (external dApps). The in-app-browser ("parent") mode is in the transport but not exposed yet — the hosted wallet side handles it in a later release.
  • Mainnet only — pass a mainnet provider.
  • One approval at a time; a dApp that fires two prompts truly simultaneously has its second request rejected (most dApps serialize).

MIT · docs.chipipay.com · example