{"_id":"@butterdoc/butterdoc","_rev":"5-70c64f2660b58dcf97c21e545f916d13","name":"@butterdoc/butterdoc","dist-tags":{"latest":"0.1.4"},"versions":{"0.1.0":{"name":"@butterdoc/butterdoc","version":"0.1.0","keywords":["butterdoc","cli"],"author":"","license":"ISC","_id":"@butterdoc/butterdoc@0.1.0","maintainers":[{"name":"timucin-rg","email":"timucin.bahsi@rglabs.io"}],"bin":{"butterdoc":"dist/index.js"},"dist":{"shasum":"7085f6beeedd20c29ea99ad987d9dc263ffbd948","tarball":"https://registry.npmjs.org/@butterdoc/butterdoc/-/butterdoc-0.1.0.tgz","fileCount":201,"integrity":"sha512-bNcorSLEcvwTQCYVwHTMcfN1cfgADOAmNtLE/YVs6dBKf1zqnUPdmrBj6ujmJvpyBTHPLyqL0FRqqDqtdObNTw==","signatures":[{"sig":"MEQCIB4UVd0SWyhKvSBxHlzSMEPeznOs1r/Op9bFQ1gw+Z8xAiBf6t8MkXhW3lTjJuyWQIaL+z3MfO69mtLFcUMdDwkFzg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1346657},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"ae8340ef015f106162b3db9507c7d12f82dec8cf","scripts":{"dev":"tsx src/index.ts","lint":"eslint src/**/*.ts","build":"npm run fetch-context && tsc && tsx scripts/build-prompts.ts","start":"node dist/index.js","typecheck":"tsc --noEmit","fetch-docs":"tsx scripts/fetch-docs.ts","dev-install":"tsx scripts/dev-install.ts","postinstall":"node -e \"import('./dist/scripts/install.js').catch(()=>{})\"","fetch-context":"tsx scripts/fetch-context.ts","prepublishOnly":"test -d dist || (echo 'Run npm run build before publishing' && exit 1)"},"_npmUser":{"name":"timucin-rg","email":"timucin.bahsi@rglabs.io"},"_npmVersion":"10.9.4","description":"CLI tool for butterdoc","directories":{},"_nodeVersion":"22.22.0","dependencies":{"dotenv":"^17.2.0","marked":"^17.0.4","commander":"^14.0.0","env-paths":"^4.0.0","puppeteer":"^24.38.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","eslint":"^10.0.1","typescript":"^5.8.3","@types/node":"^24.1.0","@typescript-eslint/parser":"^8.56.0","@typescript-eslint/eslint-plugin":"^8.56.0"},"_npmOperationalInternal":{"tmp":"tmp/butterdoc_0.1.0_1773135814092_0.6044563294957876","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@butterdoc/butterdoc","version":"0.1.1","keywords":["butterdoc","cli"],"author":"","license":"ISC","_id":"@butterdoc/butterdoc@0.1.1","maintainers":[{"name":"timucin-rg","email":"timucin.bahsi@rglabs.io"}],"bin":{"butterdoc":"dist/index.js"},"dist":{"shasum":"1640ea037c2aa9cde6ecc844919a76e31b1adcd5","tarball":"https://registry.npmjs.org/@butterdoc/butterdoc/-/butterdoc-0.1.1.tgz","fileCount":201,"integrity":"sha512-jvwobLDh0ssNkGkw+DBaaWAIahU7dSLk0Ybs/ICRHM9YdP2h3rfUqSADQjvV+DnMWPE9oerysGJP+T5sutdOCA==","signatures":[{"sig":"MEYCIQC8FnVuCSlzeIiBhHpkqNg4hZuLJPqTeacV+ShijXp/XwIhAKyZCgfV7eff4iosATVJSGcIBzUK4Oc/8nZIVyznIpC3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1346708},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"9464a72c61b55904850cab54cb1ab15f1455f183","scripts":{"dev":"tsx src/index.ts","lint":"eslint src/**/*.ts","build":"npm run fetch-context && tsc && tsx scripts/build-prompts.ts","start":"node dist/index.js","typecheck":"tsc --noEmit","fetch-docs":"tsx scripts/fetch-docs.ts","dev-install":"tsx scripts/dev-install.ts","postinstall":"node -e \"import('./dist/scripts/install.js').catch(e=>{console.warn('butterdoc postinstall: '+e.message)})\"","fetch-context":"tsx scripts/fetch-context.ts","prepublishOnly":"test -d dist || (echo 'Run npm run build before publishing' && exit 1)"},"_npmUser":{"name":"timucin-rg","email":"timucin.bahsi@rglabs.io"},"_npmVersion":"10.9.4","description":"CLI tool for butterdoc","directories":{},"_nodeVersion":"22.22.0","dependencies":{"dotenv":"^17.2.0","marked":"^17.0.4","commander":"^14.0.0","env-paths":"^4.0.0","puppeteer":"^24.38.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","eslint":"^10.0.1","typescript":"^5.8.3","@types/node":"^24.1.0","@typescript-eslint/parser":"^8.56.0","@typescript-eslint/eslint-plugin":"^8.56.0"},"_npmOperationalInternal":{"tmp":"tmp/butterdoc_0.1.1_1773136908342_0.9598852933618263","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@butterdoc/butterdoc","version":"0.1.2","keywords":["butterdoc","cli"],"author":"","license":"ISC","_id":"@butterdoc/butterdoc@0.1.2","maintainers":[{"name":"timucin-rg","email":"timucin.bahsi@rglabs.io"}],"bin":{"butterdoc":"dist/index.js"},"dist":{"shasum":"5405056665f9f15d8facb22445c87b185220c5b4","tarball":"https://registry.npmjs.org/@butterdoc/butterdoc/-/butterdoc-0.1.2.tgz","fileCount":202,"integrity":"sha512-sh0hXB4FnpFGuXPqxfKYH+KT/4MWJzNkIQ4KHtJlwwKrJAIip++hQVFTNomn9PQWJJOgU8V0RG03fzKC4Wf3eA==","signatures":[{"sig":"MEUCIHnl0vKeMhfMuUC5bQvQAu2NGh/9DBdwM1yjg1nlIpGtAiEA1fH8A/QxKHju6SJFY1z25eu6PQsTQxeGWse0Vtuy9rg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1349281},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"f7bacebea2505b11469a8788260e4956b9ab7af5","scripts":{"dev":"tsx src/index.ts","lint":"eslint src/**/*.ts","build":"npm run fetch-context && tsx scripts/build-prompts.ts && tsc","start":"node dist/index.js","typecheck":"tsc --noEmit","fetch-docs":"tsx scripts/fetch-docs.ts","dev-install":"tsx scripts/dev-install.ts","postinstall":"node dist/scripts/install.js 2>/dev/null || true","fetch-context":"tsx scripts/fetch-context.ts","prepublishOnly":"test -d dist || (echo 'Run npm run build before publishing' && exit 1)"},"_npmUser":{"name":"timucin-rg","email":"timucin.bahsi@rglabs.io"},"_npmVersion":"10.9.4","description":"CLI tool for butterdoc","directories":{},"_nodeVersion":"22.22.0","dependencies":{"dotenv":"^17.2.0","marked":"^17.0.4","commander":"^14.0.0","env-paths":"^4.0.0","puppeteer":"^24.38.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","eslint":"^10.0.1","typescript":"^5.8.3","@types/node":"^24.1.0","@typescript-eslint/parser":"^8.56.0","@typescript-eslint/eslint-plugin":"^8.56.0"},"_npmOperationalInternal":{"tmp":"tmp/butterdoc_0.1.2_1773137324393_0.05869708985299171","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@butterdoc/butterdoc","version":"0.1.3","keywords":["butterdoc","cli"],"author":"","license":"ISC","_id":"@butterdoc/butterdoc@0.1.3","maintainers":[{"name":"timucin-rg","email":"timucin.bahsi@rglabs.io"}],"bin":{"butterdoc":"dist/index.js"},"dist":{"shasum":"d8a75120271f4f74b530d26886c3a0914d17fce8","tarball":"https://registry.npmjs.org/@butterdoc/butterdoc/-/butterdoc-0.1.3.tgz","fileCount":202,"integrity":"sha512-cbvr3BSPtrZIL7uu4d0tICrQV8TjOE6jB2Ov8m8ufM13I6djolExPJf9Mi1ibgXtv8L4F7StLRh4S52RLEhKPA==","signatures":[{"sig":"MEUCIQC9kZMI+H9C13eRHk0YtDiL7525R4Bq63fbxrgmtKbYwQIgXODR4KGCSreD70F6/zNevOA1GsJlC7HUGdBP9KSQ/8o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1349261},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20.0.0"},"gitHead":"dfbb23408f106be7991904950ba80449beaa2d08","scripts":{"dev":"tsx src/index.ts","lint":"eslint src/**/*.ts","build":"npm run fetch-context && tsx scripts/build-prompts.ts && tsc","start":"node dist/index.js","typecheck":"tsc --noEmit","fetch-docs":"tsx scripts/fetch-docs.ts","dev-install":"tsx scripts/dev-install.ts","postinstall":"node dist/scripts/install.js","fetch-context":"tsx scripts/fetch-context.ts","prepublishOnly":"test -d dist || (echo 'Run npm run build before publishing' && exit 1)"},"_npmUser":{"name":"timucin-rg","email":"timucin.bahsi@rglabs.io"},"_npmVersion":"10.9.4","description":"CLI tool for butterdoc","directories":{},"_nodeVersion":"22.22.0","dependencies":{"dotenv":"^17.2.0","marked":"^17.0.4","commander":"^14.0.0","env-paths":"^4.0.0","puppeteer":"^24.38.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.3","eslint":"^10.0.1","typescript":"^5.8.3","@types/node":"^24.1.0","@typescript-eslint/parser":"^8.56.0","@typescript-eslint/eslint-plugin":"^8.56.0"},"_npmOperationalInternal":{"tmp":"tmp/butterdoc_0.1.3_1773138293166_0.48378166428391123","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@butterdoc/butterdoc","version":"0.1.4","description":"CLI tool for butterdoc","type":"module","main":"dist/index.js","bin":{"butterdoc":"dist/index.js"},"scripts":{"dev":"tsx src/index.ts","build":"npm run fetch-context && tsx scripts/build-prompts.ts && tsc","start":"node dist/index.js","lint":"eslint src/**/*.ts","typecheck":"tsc --noEmit","fetch-docs":"tsx scripts/fetch-docs.ts","fetch-context":"tsx scripts/fetch-context.ts","dev-install":"tsx scripts/dev-install.ts","postinstall":"node dist/scripts/install.js","prepublishOnly":"test -d dist || (echo 'Run npm run build before publishing' && exit 1)"},"publishConfig":{"access":"public"},"keywords":["butterdoc","cli"],"author":"","license":"ISC","engines":{"node":">=20.0.0"},"devDependencies":{"@types/node":"^24.1.0","@typescript-eslint/eslint-plugin":"^8.56.0","@typescript-eslint/parser":"^8.56.0","eslint":"^10.0.1","tsx":"^4.20.3","typescript":"^5.8.3"},"dependencies":{"commander":"^14.0.0","dotenv":"^17.2.0","env-paths":"^4.0.0","marked":"^17.0.4","puppeteer":"^24.38.0"},"_id":"@butterdoc/butterdoc@0.1.4","gitHead":"c96862f9b87d0ecc754703651437b4212443ea32","types":"./dist/index.d.ts","_nodeVersion":"22.22.0","_npmVersion":"10.9.4","dist":{"integrity":"sha512-HaOmQw6xInLq9x3sz3+atEu6tUB21HlfAw0bQHx3DI9sp2IEQD2w0VBROHw7/Z5Y0Uq1foTffLA1SkXtlj4rtQ==","shasum":"e62df54a42692900f67900c2bce3daefcea5c162","tarball":"https://registry.npmjs.org/@butterdoc/butterdoc/-/butterdoc-0.1.4.tgz","fileCount":202,"unpackedSize":1352181,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIFsOvnhceIbpD2qmm6tdBDfn85KBi2qm86JiyNr7jj6uAiEA5j5k1fIn0s3vs3orDiQJ3Gy192G7rGgkzEwMS5vNkiI="}]},"_npmUser":{"name":"timucin-rg","email":"timucin.bahsi@rglabs.io"},"directories":{},"maintainers":[{"name":"timucin-rg","email":"timucin.bahsi@rglabs.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/butterdoc_0.1.4_1773152191468_0.11774177544466768"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-10T09:43:34.001Z","modified":"2026-03-10T14:16:31.819Z","0.1.0":"2026-03-10T09:43:34.332Z","0.1.1":"2026-03-10T10:01:48.530Z","0.1.2":"2026-03-10T10:08:44.629Z","0.1.3":"2026-03-10T10:24:53.427Z","0.1.4":"2026-03-10T14:16:31.661Z"},"license":"ISC","keywords":["butterdoc","cli"],"description":"CLI tool for butterdoc","maintainers":[{"name":"timucin-rg","email":"timucin.bahsi@rglabs.io"}],"readme":"# butterdoc\n\nAutomated project documentation pipeline. Fetches source code from multiple providers, analyzes it with Claude, and generates ready-to-share documentation in Markdown, HTML, and PDF.\n\n## How it works\n\n```\nFETCH  →  ANALYZE  →  DOCUMENT  →  OUTPUT\n```\n\n1. **Fetch** — Clones repos from GitLab, GitHub, Bitbucket, or downloads from Butterfly Cloud\n2. **Analyze** — Uses Claude to inspect source code and extract overview, value proposition, delivery details, commercial model, and tags\n3. **Document** — Renders each project into a standardized template\n4. **Output** — Writes Markdown, HTML, and/or PDF files with an auto-generated index page\n\n## Prerequisites\n\n- Node.js >= 20\n- [Claude CLI](https://docs.anthropic.com/en/docs/claude-code) installed and authenticated\n- Git (for cloning repos)\n- `butterfly-cli` (only if using Butterfly Cloud sources)\n\n## Installation\n\n```bash\nnpm install -g @butterdoc/butterdoc\n```\n\nOr run locally from the repo:\n\n```bash\nnpm install\nnpm run build\nnpm run dev -- <command>\n```\n\n## Quick start\n\n```bash\n# Interactive setup — configures sources, projects, and output formats\nbutterdoc setup\n\n# Run the pipeline\nbutterdoc run\n\n# Run for specific projects only\nbutterdoc run my-project another-project\n\n# Override output format and directory\nbutterdoc run --formats md,pdf --output ./docs\n```\n\n## Configuration\n\nbutterdoc looks for `butterdoc.config.json` in the current directory, falling back to the global config at `~/.local/share/butterdoc/`. See [`butterdoc.config.json.example`](butterdoc.config.json.example) for the full format.\n\n### Sources\n\n| Source | Provider | Protocol |\n|---|---|---|\n| `gitlab` | GitLab (self-hosted or gitlab.com) | SSH / HTTPS |\n| `github` | GitHub | SSH / HTTPS |\n| `bitbucket` | Bitbucket | SSH / HTTPS |\n| `butterfly` | Butterfly Cloud | API |\n\n### Example config\n\n```json\n{\n  \"sources\": {\n    \"github\": { \"host\": \"github.com\", \"protocol\": \"ssh\" },\n    \"bitbucket\": { \"host\": \"bitbucket.org\", \"protocol\": \"ssh\" },\n    \"butterfly\": { \"host\": \"butterfly.dev\" }\n  },\n  \"projects\": [\n    { \"source\": \"github\", \"id\": \"org/repo\", \"name\": \"my-repo\" },\n    { \"source\": \"bitbucket\", \"id\": \"team/service\", \"name\": \"service\" }\n  ],\n  \"formats\": { \"md\": true, \"html\": true, \"pdf\": true },\n  \"outputDir\": \"./output\"\n}\n```\n\n## Commands\n\n| Command | Description |\n|---|---|\n| `butterdoc setup` | Interactive setup wizard |\n| `butterdoc setup --import` | Import local config into global store |\n| `butterdoc setup --export` | Export global config to local directory |\n| `butterdoc run [projects...]` | Run the documentation pipeline |\n| `butterdoc project add` | Add a project interactively |\n| `butterdoc project remove <id>` | Remove a project by id or name |\n| `butterdoc project update <id>` | Update a project's source, name, or id |\n| `butterdoc project list` | List configured projects |\n\n## License\n\nISC\n","readmeFilename":"README.md"}