OverviewFilesCommitsIssuesDocsReleasesPeers

holepunchto-kb / skills / ready-resource / api-extract.json

48 lines · json ref:
{
  "repo": "ready-resource",
  "timestamp": "2026-01-16T23:39:53.349Z",
  "entryPoint": "index.js",
  "exports": {
    "packageJson": {
      "main": "index.js"
    }
  },
  "api": {
    "file": "index.js",
    "exports": [
      {
        "type": "default",
        "name": "class"
      }
    ],
    "classes": [
      {
        "name": "ReadyResource"
      }
    ],
    "functions": [
      {
        "name": "open"
      },
      {
        "name": "close"
      }
    ]
  },
  "readme": {
    "content": "# ready-resource\n\nModern single resource management\n\n```\nnpm install ready-resource\n```\n\n## Usage\n\n```js\nconst ReadyResource = require('ready-resource')\n\nclass Thing extends ReadyResource {\n  constructor() {\n    super()\n  }\n\n  async _open() {\n    // open the resource\n  }\n\n  async _close() {\n    // close the resource\n  }\n}\n\nconst r = new Thing()\n\nawait r.ready() // calls _open once\nawait r.ready() // noop\n\nawait r.close() // calls _close after _open has finished\nawait r.close() // noop\n```\n\n## License\n\nMIT\n",
    "sections": [
      "intro",
      "usage",
      "license"
    ],
    "hasApi": true,
    "hasExamples": true,
    "exampleCount": 2,
    "examples": [
      "npm install ready-resource",
      "const ReadyResource = require('ready-resource')\n\nclass Thing extends ReadyResource {\n  constructor() {\n    super()\n  }\n\n  async _open() {\n    // open the resource\n  }\n\n  async _close() {\n    // close the resource\n  }\n}\n\nconst r = new Thing()\n\nawait r.ready() // calls _open once\nawait r.ready() // noop\n\nawait r.close() // calls _close after _open has finished\nawait r.close() // noop"
    ]
  },
  "patterns": []
}