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

@dulcetlabs/hunch-wallet

v0.1.3

Published

Non-custodial embedded EVM wallet SDK — built for any app, open for everyone.

Readme

@dulcetlabs/hunch-wallet

A wallet that belongs to your users. Not you.


@dulcetlabs/hunch-wallet is an open-source EVM wallet SDK built for apps that want to give users real ownership — without asking them to install anything, copy a seed phrase on signup, or trust a third party with their keys.

Keys are generated on-device. The seed phrase goes straight to the user. Hunch never sees it.


What it does

  • Generates self-custody EVM wallets in any JavaScript environment
  • Supports 12 chains out of the box — Arbitrum, Base, Ethereum, and more
  • Handles token approvals, transaction signing, and broadcasting
  • Optionally wraps any wallet in a smart account for gasless transactions via Alchemy

Install

yarn add @dulcetlabs/hunch-wallet viem

For gasless smart accounts, also add:

yarn add @alchemy/aa-core @account-kit/infra @account-kit/wallet-client

The basics

import { HunchWallet } from '@dulcetlabs/hunch-wallet'

const sdk = HunchWallet.init({ chains: ['arbitrum'] })

// Create a new wallet
const wallet = sdk.create()

// Restore one from a seed phrase
const wallet = sdk.fromMnemonic('word1 word2 ... word12')

// Or load a server-side key directly
const wallet = sdk.fromPrivateKey(process.env.PRIVATE_KEY)

Every wallet comes with an address, a seed phrase (or null for key-based wallets), and a full set of methods for signing and sending — all chain-guarded so nothing goes to the wrong network by accident.


Gasless transactions

Wrap any wallet in a smart account and Alchemy handles the gas. Users pay nothing.

import { HunchWallet, HunchWalletAA } from '@dulcetlabs/hunch-wallet'

const wallet = HunchWallet.init({ chains: ['arbitrum'] }).fromPrivateKey(pk)

const aa = new HunchWalletAA({
  walletClient:      wallet.getViemWalletClient({ chain: 'arbitrum' }),
  alchemyApiKey:     process.env.ALCHEMY_API_KEY,
  paymasterPolicyId: process.env.PAYMASTER_POLICY_ID,
  chain:             'arbitrum',
})

const address = await aa.connect()
await aa.sendTransaction({ to: '0x...', data: '0x...' })

The address returned by connect() is the smart account — that's what users fund. The underlying EOA is never shown.


Supported chains

Arbitrum · Base · Ethereum · Optimism · Polygon · Zora · Blast · Scroll · Linea · BNB · Avalanche · Arbitrum Nova

Gasless smart accounts are available on all chains except BNB, Avalanche, and Arbitrum Nova.


Documentation

Full API reference and integration guides in DOCS.md.


License

MIT