OverviewFilesCommitsIssuesDocsReleasesPeers

holepunchto-kb / skills / keypear / api-extract.json

71 lines · json ref:
{
  "repo": "keypear",
  "timestamp": "2026-01-16T23:39:46.925Z",
  "entryPoint": "index.js",
  "exports": {
    "packageJson": {
      "main": "index.js"
    }
  },
  "api": {
    "file": "index.js",
    "exports": [
      {
        "type": "default",
        "name": "Keychain"
      }
    ],
    "classes": [
      {
        "name": "Keychain"
      }
    ],
    "functions": [
      {
        "name": "add"
      },
      {
        "name": "fromKeyPair"
      },
      {
        "name": "allocKeyPair"
      },
      {
        "name": "toScalarKeyPair"
      },
      {
        "name": "tweakKeyPair"
      },
      {
        "name": "createSigner"
      },
      {
        "name": "verify"
      },
      {
        "name": "toBuffer"
      }
    ]
  },
  "readme": {
    "content": "# keypear\n\n🔑🍐 Keychain that derives deterministic Ed25519 keypairs and attestations\n\n```\nnpm install keypear\n```\n\n## Usage\n\n``` js\nconst Keychain = require('keypear')\n\nconst keys = new Keychain()\n\nconst cur = keys.get() // returns the current keypair instance\nconst foo = keys.get('foo') // tweaks and returns a keypair instance for 'foo'\n\nconst sub = keys.sub('bar') // get a sub keychain tweaked by 'bar'\nconst subsub = sub.sub('baz') // sub on the sub chain\n\n// to sign things\n\nconst sig = cur.sign(message)\nconst publicKey = cur.publicKey\n```\n\n## API\n\n#### `keys = new Keychain(publicKeyOrKeyPair)`\n\nMake a new Keychain instance.\n\n```js\nconst keys = new Keychain() // generates a fresh keypair for you\nconst keys = new Keychain(publicKey) // generate a \"readonly\" keychain\nconst keys = new Keychain(keyPair) // generate a keychain from a keypair\n```\n\n#### `keys.home`\n\nPoints to the keypair that was used to construct the Keychain.\n\n#### `keys.base`\n\nPoints to current checkout, or home if no c",
    "sections": [
      "intro",
      "usage",
      "api",
      "bootstrapping helpers",
      "license"
    ],
    "hasApi": true,
    "hasExamples": true,
    "exampleCount": 9,
    "examples": [
      "npm install keypear",
      "## API\n\n#### `keys = new Keychain(publicKeyOrKeyPair)`\n\nMake a new Keychain instance.",
      "#### `keys.home`\n\nPoints to the keypair that was used to construct the Keychain.\n\n#### `keys.base`\n\nPoints to current checkout, or home if no checkout was made.\n\n#### `keys.tweak`\n\nPoints to the current tweak used.\n\n#### `keys.head`\n\nThe key pair of this chain, basically `base + tweak`.\n\n#### `keys = Keychain.from(keyChainOrPublicKeyOrKeyPair)`\n\nSame as above, except it will return the Keychain if passed to it.\nUseful to avoid a peer dependency on the Keychain in your application, ie"
    ]
  },
  "patterns": [
    "cryptography"
  ]
}