{"_id":"@airdraft/media-adapter-github","_rev":"3-655e68ab5169a9e77d1c98933e0df904","name":"@airdraft/media-adapter-github","dist-tags":{"latest":"0.1.2"},"versions":{"0.1.0":{"name":"@airdraft/media-adapter-github","version":"0.1.0","license":"MIT","_id":"@airdraft/media-adapter-github@0.1.0","maintainers":[{"name":"miracleio","email":"miracleficient@gmail.com"}],"dist":{"shasum":"faa9d0639898e6e48e34ff228d59c07eba9628c8","tarball":"https://registry.npmjs.org/@airdraft/media-adapter-github/-/media-adapter-github-0.1.0.tgz","fileCount":11,"integrity":"sha512-x+Thaye4HdounWJ4f1y92brIWo/X425T9I9aJwCEFW2iaoTYjrGWsJhNp6QTtLBsG1gl+yHLtZvFJ+6ECyh0XA==","signatures":[{"sig":"MEUCIQCgVlNvhPx4Nw8n5U5uZ9k8HLGASzGEdQmydWCuc+gRCQIgWCUn6gXttuYL98khbrOHZ3mRXWC2G4ikAQPS7dy0T7g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31475},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"82986d867402ff3a6f1a3056a455c5f09d5c9f70","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","release":"standard-version","typecheck":"tsc --noEmit","test:watch":"vitest","release:major":"standard-version --release-as major","release:minor":"standard-version --release-as minor","release:patch":"standard-version --release-as patch","prepublishOnly":"npm run build"},"_npmUser":{"name":"miracleio","email":"miracleficient@gmail.com"},"_npmVersion":"11.9.0","description":"Airdraft media adapter for GitHub repositories via GitHub App authentication","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","vitest":"^1.5.0","typescript":"^5.4.0","@types/node":"^20.0.0","@airdraft/core":"*","standard-version":"^9.5.0"},"peerDependencies":{"@airdraft/core":">=0.1.8"},"_npmOperationalInternal":{"tmp":"tmp/media-adapter-github_0.1.0_1779863660803_0.05310645457297669","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@airdraft/media-adapter-github","version":"0.1.1","license":"MIT","_id":"@airdraft/media-adapter-github@0.1.1","maintainers":[{"name":"miracleio","email":"miracleficient@gmail.com"}],"dist":{"shasum":"ba07bb8e27fc8339bba47bd3df9e1f8a7c1d0a02","tarball":"https://registry.npmjs.org/@airdraft/media-adapter-github/-/media-adapter-github-0.1.1.tgz","fileCount":11,"integrity":"sha512-CG2yxhRClif95SjLgo2q5QcHw6zo9g3ttiX3OaojIogeQCLbbaAJWkBRnud7TjarDR0YN9rgA2DCM67jtc+mhQ==","signatures":[{"sig":"MEQCH1QeTkWSoFFzGwr0zSMJuhWBHMROOxQU5DMkvAz5w2cCIQD6bmtIZ/SGymE1C59zLUClM/WTfwuzLApVoghk1kihZw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51040},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"8c9d4744b92db08fa725d40bc50f9ef0f1392e59","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc","clean":"rm -rf dist","release":"standard-version","typecheck":"tsc --noEmit","test:watch":"vitest","release:major":"standard-version --release-as major","release:minor":"standard-version --release-as minor","release:patch":"standard-version --release-as patch","prepublishOnly":"npm run build"},"_npmUser":{"name":"miracleio","email":"miracleficient@gmail.com"},"_npmVersion":"11.9.0","description":"Airdraft media adapter for GitHub repositories via GitHub App authentication","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7.0","vitest":"^1.5.0","typescript":"^5.4.0","@types/node":"^20.0.0","@airdraft/core":"*","standard-version":"^9.5.0"},"peerDependencies":{"@airdraft/core":">=0.1.8"},"_npmOperationalInternal":{"tmp":"tmp/media-adapter-github_0.1.1_1780221079364_0.6779715917082028","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@airdraft/media-adapter-github","version":"0.1.2","description":"Airdraft media adapter for GitHub repositories via GitHub App authentication","type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":"./dist/index.js","types":"./dist/index.d.ts"}},"scripts":{"build":"tsc","dev":"tsc --watch","clean":"rm -rf dist","test":"vitest run","test:watch":"vitest","typecheck":"tsc --noEmit","prepublishOnly":"npm run build","release":"standard-version","release:patch":"standard-version --release-as patch","release:minor":"standard-version --release-as minor","release:major":"standard-version --release-as major"},"publishConfig":{"access":"public"},"license":"MIT","devDependencies":{"@types/node":"^20.0.0","standard-version":"^9.5.0","tsx":"^4.7.0","typescript":"^5.4.0","vitest":"^1.5.0","@airdraft/core":"*"},"engines":{"node":">=18.0.0"},"peerDependencies":{"@airdraft/core":">=0.1.8"},"gitHead":"9fdb3e0fbca1e58bb84aca8dd92155d0057ca4b1","_id":"@airdraft/media-adapter-github@0.1.2","_nodeVersion":"24.14.0","_npmVersion":"11.9.0","dist":{"integrity":"sha512-gzfycAh2N+mMLz0TWUcNV607Ja1gWC/VTyhxNPj18BkD2mvJoz7mKIqdmD672EeCJsHB5G6ItZ4eNut+K4nM8w==","shasum":"ee8b5358161030b9cd648f08dfe23de485b19530","tarball":"https://registry.npmjs.org/@airdraft/media-adapter-github/-/media-adapter-github-0.1.2.tgz","fileCount":11,"unpackedSize":54556,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIG/xgqvt2a4FuHtXNMXTGDT76+3KLKTdx/WQicAjDvkzAiEAojoYqqCClhTe2nQqyTXVsZykahizFEtjyejK/y2PZio="}]},"_npmUser":{"name":"miracleio","email":"miracleficient@gmail.com"},"directories":{},"maintainers":[{"name":"miracleio","email":"miracleficient@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/media-adapter-github_0.1.2_1782407245074_0.3105204449575272"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-27T06:34:20.644Z","modified":"2026-06-25T17:07:25.379Z","0.1.0":"2026-05-27T06:34:20.934Z","0.1.1":"2026-05-31T09:51:19.512Z","0.1.2":"2026-06-25T17:07:25.235Z"},"license":"MIT","description":"Airdraft media adapter for GitHub repositories via GitHub App authentication","maintainers":[{"name":"miracleio","email":"miracleficient@gmail.com"}],"readme":"# @airdraft/media-adapter-github\n\nMedia storage adapter for Airdraft that stores binary media files directly in a GitHub repository via the GitHub Contents API.\n\n## Installation\n\n```bash\nnpm install @airdraft/media-adapter-github\n```\n\n## Usage\n\n```ts\nimport { GitHubMediaAdapter } from '@airdraft/media-adapter-github'\n\nconst adapter = new GitHubMediaAdapter({\n  tokenProvider: async () => process.env.GITHUB_INSTALLATION_TOKEN!,\n  repo: 'owner/repo',\n  branch: 'main',\n})\n```\n\nYou can also provide GitHub App credentials directly:\n\n```ts\nconst adapter = new GitHubMediaAdapter({\n  appId: process.env.GITCMS_APP_ID!,\n  privateKey: process.env.GITCMS_PRIVATE_KEY!,\n  installationId: process.env.GITCMS_INSTALLATION_ID!,\n  repo: process.env.GITCMS_REPO!,\n  branch: process.env.GITCMS_BRANCH ?? 'main',\n})\n```\n\n## Notes\n\n- Default adapter-level upload limit is 10 MB per file.\n- URLs resolve to `/{key}` by default, or `{publicBaseUrl}/{key}` when configured.\n- Designed for repo-backed media workflows where local and production paths should match.\n","readmeFilename":"README.md"}