JSPM

@coinstats/connectkit

1.0.0
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 5
  • Score
    100M100P100Q79011F
  • License MIT

Browser SDK for opening CoinStats ConnectKit popup flows.

Package Exports

  • @coinstats/connectkit
  • @coinstats/connectkit/connect.global

Readme

CoinStats ConnectKit SDK

Browser SDK for opening hosted CoinStats ConnectKit popup flows from partner apps.

npm install @coinstats/connectkit
import { openCoinStatsConnect } from "@coinstats/connectkit";

const handle = openCoinStatsConnect({
  id: "pcw_123",
  redirectUri: "https://your-app.example.com/coinstats/callback",
  state: "opaque-user-state",
  mode: "both",
  appearance: "dark",
  accentColor: "#F7931A",
  onSuccess(result) {
    console.log("Connected portfolio", result.portfolioId);
  },
  onError(error) {
    console.error(error);
  },
  onClose() {
    console.log("User closed the popup");
  },
});

handle.close();

Why ConnectKit

ConnectKit lets your app send users into a CoinStats-hosted wallet or exchange connection flow without exposing your CoinStats Public API key in browser code. Your frontend uses only the public ConnectKit id, redirect URL, and optional state value.

Options

Option Required Description
id Yes, unless connectUrl is provided Public ConnectKit ID from the CoinStats dashboard.
redirectUri Yes with id URL where the user returns after the hosted flow.
state No Opaque value returned in the final result.
mode No Connection mode: wallet, exchange, or both.
appearance No Popup theme: light or dark.
accentColor No Hex color for partner styling.
onSuccess No Called when the popup posts a successful result.
onError No Called when the popup cannot be opened or the session cannot be created.
onClose No Called when the user closes the popup before completion.

If your backend already created a ConnectKit session, open the returned URL directly:

openCoinStatsConnect({
  connectUrl,
  onSuccess(result) {
    console.log(result);
  },
});

Browser Script

The package ships a standalone browser bundle exposing window.openCoinStatsConnect:

<script src="https://unpkg.com/@coinstats/connectkit/dist/connect.global.js"></script>
<script>
  window.openCoinStatsConnect({
    id: "pcw_123",
    redirectUri: "https://your-app.example.com/coinstats/callback",
    onSuccess: function (result) {
      console.log(result);
    }
  });
</script>

Development

npm install
npm test
npm run typecheck
npm run build
npm run smoke

License

MIT