OverviewFilesCommitsIssuesDocsReleasesPeers

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

154 lines · json ref:
{
  "repo": "hyperbee",
  "timestamp": "2026-01-16T23:00:27.030Z",
  "entryPoint": "index.js",
  "exports": {
    "packageJson": {
      "main": "index.js"
    }
  },
  "api": {
    "file": "index.js",
    "exports": [
      {
        "type": "default",
        "name": "Hyperbee"
      }
    ],
    "classes": [
      {
        "name": "Key"
      },
      {
        "name": "Child"
      },
      {
        "name": "Cache"
      },
      {
        "name": "Pointers"
      },
      {
        "name": "TreeNode"
      },
      {
        "name": "BlockEntry"
      },
      {
        "name": "CacheLock"
      },
      {
        "name": "BatchEntry"
      },
      {
        "name": "Hyperbee"
      },
      {
        "name": "Batch"
      },
      {
        "name": "EntryWatcher"
      },
      {
        "name": "Watcher"
      }
    ],
    "functions": [
      {
        "name": "inflate"
      },
      {
        "name": "deflate"
      },
      {
        "name": "fin"
      },
      {
        "name": "push"
      },
      {
        "name": "autoFlowOnUpdate"
      },
      {
        "name": "defaultWatchMap"
      },
      {
        "name": "leafSize"
      },
      {
        "name": "setKeyToNearestLeaf"
      },
      {
        "name": "rebalance"
      },
      {
        "name": "iteratorToStream"
      },
      {
        "name": "fin"
      },
      {
        "name": "push"
      },
      {
        "name": "iteratorPeek"
      },
      {
        "name": "encRange"
      },
      {
        "name": "bump"
      },
      {
        "name": "enc"
      },
      {
        "name": "prefixEncoding"
      },
      {
        "name": "copyEntry"
      },
      {
        "name": "defaultDiffer"
      },
      {
        "name": "toNull"
      },
      {
        "name": "getBackingCore"
      },
      {
        "name": "sameValue"
      },
      {
        "name": "noop"
      },
      {
        "name": "getExtension"
      },
      {
        "name": "isLinked"
      }
    ]
  },
  "readme": {
    "content": "# Hyperbee 🐝\n\n[See API docs at docs.pears.com](https://docs.pears.com/building-blocks/hyperbee)\n\nAn append-only B-tree running on a Hypercore. Allows sorted iteration and more.\n\n```\nnpm install hyperbee\n```\n\n## Usage\n\n```js\nconst Hyperbee = require('hyperbee')\nconst Hypercore = require('hypercore')\n\nconst core = new Hypercore('./storage')\nconst db = new Hyperbee(core, { keyEncoding: 'utf-8', valueEncoding: 'binary' })\n\n// If you own the core\nawait db.put('key1', 'value1')\nawait db.put('key2', 'value2')\nawait db.del('some-key')\n\n// If you want to insert/delete batched values\nconst batch = db.batch()\n\nawait batch.put('key', 'value')\nawait batch.del('some-key')\nawait batch.flush() // Execute the batch\n\n// Query the core\nconst entry = await db.get('key') // => null or { key, value }\n\n// Read all entries\nfor await (const entry of db.createReadStream()) {\n  // ..\n}\n\n// Read a range\nfor await (const entry of db.createReadStream({ gte: 'a', lt: 'd' })) {\n  // Anything >=a and <d\n}\n\n// Get the",
    "sections": [
      "intro",
      "usage",
      "api"
    ],
    "hasApi": true,
    "hasExamples": true,
    "exampleCount": 14,
    "examples": [
      "npm install hyperbee",
      "const Hyperbee = require('hyperbee')\nconst Hypercore = require('hypercore')\n\nconst core = new Hypercore('./storage')\nconst db = new Hyperbee(core, { keyEncoding: 'utf-8', valueEncoding: 'binary' })\n\n// If you own the core\nawait db.put('key1', 'value1')\nawait db.put('key2', 'value2')\nawait db.del('some-key')\n\n// If you want to insert/delete batched values\nconst batch = db.batch()\n\nawait batch.put('key', 'value')\nawait batch.del('some-key')\nawait batch.flush() // Execute the batch\n\n// Query the core\nconst entry = await db.get('key') // => null or { key, value }\n\n// Read all entries\nfor await (const entry of db.createReadStream()) {\n  // ..\n}\n\n// Read a range\nfor await (const entry of db.createReadStream({ gte: 'a', lt: 'd' })) {\n  // Anything >=a and <d\n}\n\n// Get the last written entry\nfor await (const entry of db.createHistoryStream({ reverse: true, limit: 1 })) {\n  // ..\n}",
      "{\n  keyEncoding: 'binary', // \"binary\" (default), \"utf-8\", \"ascii\", \"json\", or an abstract-encoding\n  valueEncoding: 'binary' // Same options as keyEncoding like \"json\", etc\n}"
    ]
  },
  "patterns": [
    "append-only-log",
    "streaming"
  ]
}