{"_id":"@binarynoir/vitepress-auto-sidebar","_rev":"17-bae6aeff5b7be979cfc14f4649ebee89","name":"@binarynoir/vitepress-auto-sidebar","dist-tags":{"latest":"0.4.7"},"versions":{"0.3.2":{"name":"@binarynoir/vitepress-auto-sidebar","version":"0.3.2","keywords":["vitepress","vitepress-plugin","sidebar","docs","documentation"],"author":{"name":"BinaryNoir"},"license":"MIT","_id":"@binarynoir/vitepress-auto-sidebar@0.3.2","maintainers":[{"name":"binarynoir","email":"binarynoir@icloud.com"}],"homepage":"https://github.com/binarynoir/vitepress-auto-sidebar#readme","bugs":{"url":"https://github.com/binarynoir/vitepress-auto-sidebar/issues"},"dist":{"shasum":"eb20479d4fb915224aa6ccd4fbfe4e53f2ad5915","tarball":"https://registry.npmjs.org/@binarynoir/vitepress-auto-sidebar/-/vitepress-auto-sidebar-0.3.2.tgz","fileCount":9,"integrity":"sha512-ABmA7rhmf9bOCMGKimYvHQK2yyIba8+hdiqL45ZwqOJ8MlobpCVs8sTkFyeplJIMCuWRgrYDnmIsq746HhEsyA==","signatures":[{"sig":"MEYCIQDDyuNlJDVf2xTSmgtrfq8aRM95obxgxdpKjyZjXNvJdgIhAMdsjJ/bohh3RzK97YDpNl2xlgxm019wMVpU810W8zBj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@binarynoir%2fvitepress-auto-sidebar@0.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":170441},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./package.json":"./package.json"},"gitHead":"a691d60e8f29cd5f82c3fce4413fa74d114293d5","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","format":"prettier --write .","release":"node scripts/release.js","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check .","release:major":"node scripts/release.js major","release:minor":"node scripts/release.js minor","release:patch":"node scripts/release.js patch","prepublishOnly":"npm run typecheck && npm run test && npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:67dc8646-ef34-4899-88ec-5cdd62d9c99b"}},"repository":{"url":"git+https://github.com/binarynoir/vitepress-auto-sidebar.git","type":"git"},"_npmVersion":"12.0.2","description":"Automatically generate a VitePress 2 multi-sidebar config from your docs folder structure, with per-directory ordering, titles, hiding, and exclusion files.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.2","dependencies":{"gray-matter":"^4.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","eslint":"^9.17.0","vitest":"^2.1.8","prettier":"^3.9.6","typescript":"^5.7.2","@types/node":"^22.10.2","typescript-eslint":"^8.19.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/vitepress-auto-sidebar_0.3.2_1789061368182_0.8958148024009587","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@binarynoir/vitepress-auto-sidebar","version":"0.4.0","keywords":["vitepress","vitepress-plugin","sidebar","docs","documentation"],"author":{"name":"BinaryNoir"},"license":"MIT","_id":"@binarynoir/vitepress-auto-sidebar@0.4.0","maintainers":[{"name":"binarynoir","email":"binarynoir@icloud.com"}],"homepage":"https://github.com/binarynoir/vitepress-auto-sidebar#readme","bugs":{"url":"https://github.com/binarynoir/vitepress-auto-sidebar/issues"},"dist":{"shasum":"096926a8408a585f24c15bdbd3899fd141be1243","tarball":"https://registry.npmjs.org/@binarynoir/vitepress-auto-sidebar/-/vitepress-auto-sidebar-0.4.0.tgz","fileCount":9,"integrity":"sha512-tQ8OnDlxTQjXHHHio0V9ppilFSzUrRfe4hMGegXMRBW0Y53w++IqUNWnoHYjTiys2Xtp3TkqtP0bzqnH304/2w==","signatures":[{"sig":"MEYCIQD6TYOwdFhI7APeBkujsO/n9mwsssksZLX9nkPaktC3wgIhANxJfpUHKQL3yG3JycnzMulyFuKJ+GBGH9H8T78mGCBv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@binarynoir%2fvitepress-auto-sidebar@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":179461},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./package.json":"./package.json"},"gitHead":"f09a078a7f5c4aa59e0b00b1b3be6c448ea496db","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","format":"prettier --write .","release":"node scripts/release.js","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check .","release:major":"node scripts/release.js major","release:minor":"node scripts/release.js minor","release:patch":"node scripts/release.js patch","prepublishOnly":"npm run typecheck && npm run test && npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:67dc8646-ef34-4899-88ec-5cdd62d9c99b"}},"repository":{"url":"git+https://github.com/binarynoir/vitepress-auto-sidebar.git","type":"git"},"_npmVersion":"12.0.2","description":"Automatically generate a VitePress 2 multi-sidebar config from your docs folder structure, with per-directory ordering, titles, hiding, and exclusion files.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.2","dependencies":{"gray-matter":"^4.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","eslint":"^9.17.0","vitest":"^2.1.8","prettier":"^3.9.6","typescript":"^5.7.2","@types/node":"^22.10.2","typescript-eslint":"^8.19.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/vitepress-auto-sidebar_0.4.0_1789067978864_0.2666452459910622","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"@binarynoir/vitepress-auto-sidebar","version":"0.4.1","keywords":["vitepress","vitepress-plugin","sidebar","docs","documentation"],"author":{"name":"BinaryNoir"},"license":"MIT","_id":"@binarynoir/vitepress-auto-sidebar@0.4.1","maintainers":[{"name":"binarynoir","email":"binarynoir@icloud.com"}],"homepage":"https://github.com/binarynoir/vitepress-auto-sidebar#readme","bugs":{"url":"https://github.com/binarynoir/vitepress-auto-sidebar/issues"},"dist":{"shasum":"bf456287e6473d09e9b196acbda259e5cb1ae15d","tarball":"https://registry.npmjs.org/@binarynoir/vitepress-auto-sidebar/-/vitepress-auto-sidebar-0.4.1.tgz","fileCount":9,"integrity":"sha512-gsni/kDGxDT1q2IXfSxUaDWFmZwKtBN1mVbjHNLR5pF6A/2XRf6WuSf1gM598nD5XQbi4z5P6Za6HjOVJFTZqA==","signatures":[{"sig":"MEQCIHmEeLDZAFyt4VCns/ZHszg3u8Qj+4QUQPKfALxoqfW3AiAd8+lyE8NMchOnBHepUPEn78rVCdKzg0L4lvhZ0Gc5cg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@binarynoir%2fvitepress-auto-sidebar@0.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":179402},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./package.json":"./package.json"},"gitHead":"db2b8e21efa83cfe6809bce06fdcd7c0c4c58eb1","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","format":"prettier --write .","release":"node scripts/release.js","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check .","release:major":"node scripts/release.js major","release:minor":"node scripts/release.js minor","release:patch":"node scripts/release.js patch","prepublishOnly":"npm run typecheck && npm run test && npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:67dc8646-ef34-4899-88ec-5cdd62d9c99b"}},"repository":{"url":"git+https://github.com/binarynoir/vitepress-auto-sidebar.git","type":"git"},"_npmVersion":"12.0.2","description":"Automatically generate a VitePress 2 multi-sidebar config from your docs folder structure, with per-directory ordering, titles, hiding, and exclusion files.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.2","dependencies":{"gray-matter":"^4.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","eslint":"^9.17.0","vitest":"^2.1.8","prettier":"^3.9.6","typescript":"^5.7.2","@types/node":"^22.10.2","typescript-eslint":"^8.19.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/vitepress-auto-sidebar_0.4.1_1789068720477_0.8739142987570578","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"name":"@binarynoir/vitepress-auto-sidebar","version":"0.4.2","keywords":["vitepress","vitepress-plugin","sidebar","docs","documentation"],"author":{"name":"BinaryNoir"},"license":"MIT","_id":"@binarynoir/vitepress-auto-sidebar@0.4.2","maintainers":[{"name":"binarynoir","email":"binarynoir@icloud.com"}],"homepage":"https://github.com/binarynoir/vitepress-auto-sidebar#readme","bugs":{"url":"https://github.com/binarynoir/vitepress-auto-sidebar/issues"},"dist":{"shasum":"cc487e29ef067079eda4036e07c0291cbb90202b","tarball":"https://registry.npmjs.org/@binarynoir/vitepress-auto-sidebar/-/vitepress-auto-sidebar-0.4.2.tgz","fileCount":9,"integrity":"sha512-njSBmiO/OUKkXf3IGV4apYuGlItKOHFvMynaM8EHzCSL/JkSwPaevI8sXS+EJoWtyxY5lo727/o32pWTHK8Jog==","signatures":[{"sig":"MEUCIFZmpoTP1Y1MW2ejP8+n5ii2/ZA0istlME3Gf7iptn4mAiEAlLOawIuondsCEQJVw7190TI0a2l/4tKlxxa9aEec5bk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@binarynoir%2fvitepress-auto-sidebar@0.4.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":179566},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./package.json":"./package.json"},"gitHead":"4491d783e479250eb388ca66228c32df7afa0b09","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","format":"prettier --write .","release":"node scripts/release.js","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check .","release:major":"node scripts/release.js major","release:minor":"node scripts/release.js minor","release:patch":"node scripts/release.js patch","prepublishOnly":"npm run typecheck && npm run test && npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:67dc8646-ef34-4899-88ec-5cdd62d9c99b"}},"repository":{"url":"git+https://github.com/binarynoir/vitepress-auto-sidebar.git","type":"git"},"_npmVersion":"12.0.2","description":"Automatically generate a VitePress 2 multi-sidebar config from your docs folder structure, with per-directory ordering, titles, hiding, and exclusion files.","directories":{},"sideEffects":false,"_nodeVersion":"22.23.2","dependencies":{"gray-matter":"^4.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","eslint":"^9.17.0","vitest":"^2.1.8","prettier":"^3.9.6","typescript":"^5.7.2","@types/node":"^22.10.2","typescript-eslint":"^8.19.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/vitepress-auto-sidebar_0.4.2_1789069225603_0.9548505028652128","host":"s3://npm-registry-packages-npm-production"}},"0.4.3":{"name":"@binarynoir/vitepress-auto-sidebar","version":"0.4.3","keywords":["vitepress","vitepress-plugin","sidebar","docs","documentation"],"author":{"name":"BinaryNoir"},"license":"MIT","_id":"@binarynoir/vitepress-auto-sidebar@0.4.3","maintainers":[{"name":"binarynoir","email":"binarynoir@icloud.com"}],"homepage":"https://github.com/binarynoir/vitepress-auto-sidebar#readme","bugs":{"url":"https://github.com/binarynoir/vitepress-auto-sidebar/issues"},"dist":{"shasum":"ff552962641f7a98cfaf3efb8866f767bf9dcca9","tarball":"https://registry.npmjs.org/@binarynoir/vitepress-auto-sidebar/-/vitepress-auto-sidebar-0.4.3.tgz","fileCount":9,"integrity":"sha512-J3wFZsTGzkHcFH2fHD4I2iPsYJT7p+GGkTjMphpLlmD++1nJiLPdUptGQkKGQjiXet5f4g5VMmDw5/OJ9j3EsA==","signatures":[{"sig":"MEYCIQDpJmyCpBtmNpxRBVAChij4dfS4pZ7XjBRKYwQc3ha6swIhAJwiNEfh2mGkqSBoTiWlvpCMtQMSwdmIB2Bn/Ru5YZdo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCByPFuxJQ8FlA1Gya24MysV43ArpFDLfczIYonhOGD2AIgIhlByGqbDb9x740VsN8hLdcisViLf91DrdfECYevgiY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@binarynoir%2fvitepress-auto-sidebar@0.4.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":179566},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./package.json":"./package.json"},"gitHead":"4dd4e068f3d911f01fb2e994eee54c7772054c14","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","format":"prettier --write .","release":"node scripts/release.js","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check .","release:major":"node scripts/release.js major","release:minor":"node scripts/release.js minor","release:patch":"node scripts/release.js patch","prepublishOnly":"npm run typecheck && npm run test && npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:67dc8646-ef34-4899-88ec-5cdd62d9c99b"}},"repository":{"url":"git+https://github.com/binarynoir/vitepress-auto-sidebar.git","type":"git"},"_npmVersion":"12.0.2","description":"Automatically generate a VitePress 2 multi-sidebar config from your docs folder structure, with per-directory ordering, titles, hiding, and exclusion files.","directories":{},"sideEffects":false,"_nodeVersion":"26.9.0","dependencies":{"gray-matter":"^4.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","eslint":"^9.17.0","vitest":"^2.1.8","prettier":"^3.9.6","typescript":"^5.7.2","@types/node":"^22.10.2","typescript-eslint":"^8.19.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/vitepress-auto-sidebar_0.4.3_1790002779251_0.45495168127569574","host":"s3://npm-registry-packages-npm-production"}},"0.4.4":{"name":"@binarynoir/vitepress-auto-sidebar","version":"0.4.4","keywords":["vitepress","vitepress-plugin","sidebar","docs","documentation"],"author":{"name":"BinaryNoir"},"license":"MIT","_id":"@binarynoir/vitepress-auto-sidebar@0.4.4","maintainers":[{"name":"binarynoir","email":"binarynoir@icloud.com"}],"homepage":"https://github.com/binarynoir/vitepress-auto-sidebar#readme","bugs":{"url":"https://github.com/binarynoir/vitepress-auto-sidebar/issues"},"dist":{"shasum":"6f006ec8dac83a050a1656718beebcf4b1fcd377","tarball":"https://registry.npmjs.org/@binarynoir/vitepress-auto-sidebar/-/vitepress-auto-sidebar-0.4.4.tgz","fileCount":9,"integrity":"sha512-2HrV4VZA7/dzZDzfW9QjWlqvQUZi5PNLE1bg1Pu/STjW1/HEhvF/YMKRucxFKrvZRaY4unf+CwIO/8cL2f541A==","signatures":[{"sig":"MEUCIQDdy8QKj9zM3Dv2S69iyZ9rQvTVPZAoLOHS6lgCuzD+eQIgXLKJQr/GTUkO1RoeuLNQhUGg+fNXv6BCsUNLwSyx2Qg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICIuwi6J5wywisxYyIhouOBF1BS2pS45rfO0rtlmWWAVAiAiJjscXuqVoXbqx5PKDP9Q7/72ixuGUwT/0O8PLEBNPg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@binarynoir%2fvitepress-auto-sidebar@0.4.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":179588},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./package.json":"./package.json"},"gitHead":"3e6155db422657a7e520108d351dab1f8fe2a1ea","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","format":"prettier --write .","release":"node scripts/release.js","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check .","release:major":"node scripts/release.js major","release:minor":"node scripts/release.js minor","release:patch":"node scripts/release.js patch","prepublishOnly":"npm run typecheck && npm run test && npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:67dc8646-ef34-4899-88ec-5cdd62d9c99b"}},"repository":{"url":"git+https://github.com/binarynoir/vitepress-auto-sidebar.git","type":"git"},"_npmVersion":"12.0.2","description":"Automatically generate a VitePress 2 multi-sidebar config from your docs folder structure, with per-directory ordering, titles, hiding, and exclusion files.","directories":{},"sideEffects":false,"_nodeVersion":"26.9.0","dependencies":{"gray-matter":"^4.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.3.0","eslint":"^10.11.0","vitest":"^5.0.1","prettier":"^3.9.8","typescript":"^6.0.3","@types/node":"^26.6.2","typescript-eslint":"^8.70.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/vitepress-auto-sidebar_0.4.4_1790005535547_0.7095574285941746","host":"s3://npm-registry-packages-npm-production"}},"0.4.5":{"name":"@binarynoir/vitepress-auto-sidebar","version":"0.4.5","keywords":["vitepress","vitepress-plugin","sidebar","docs","documentation"],"author":{"name":"BinaryNoir"},"license":"MIT","_id":"@binarynoir/vitepress-auto-sidebar@0.4.5","maintainers":[{"name":"binarynoir","email":"binarynoir@icloud.com"}],"homepage":"https://github.com/binarynoir/vitepress-auto-sidebar#readme","bugs":{"url":"https://github.com/binarynoir/vitepress-auto-sidebar/issues"},"dist":{"shasum":"77683c1081c4b6142d9d305ea60c1087bb3dee2c","tarball":"https://registry.npmjs.org/@binarynoir/vitepress-auto-sidebar/-/vitepress-auto-sidebar-0.4.5.tgz","fileCount":9,"integrity":"sha512-etoCjY+MnLB71tOqXvoK+KD3OolitGHkY25/QvrBEUO9HJo9smJ5ikjaMknsytQTjzxGwkphh3ansbhrYZdGBQ==","signatures":[{"sig":"MEUCIQC4n2PoXmchdZJL/4hPCaEycza3ADt0AlMcrfm7pU70+QIgcQSnVKSkPqXkBqhrWzHr+hOEgy7wCuiB5UO2jUOM0P0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCzbFk0Fp3NrUGCb7SvwY97+dqqZK5qXssTVzKBlwJT+wIgLs2zjIItRid8WpQnTazAYHGr2WPmFHLndNBAKRh1ijw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@binarynoir%2fvitepress-auto-sidebar@0.4.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180059},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./package.json":"./package.json"},"gitHead":"06a416227fe7b330defcf3b812e8bb5cd21175bc","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","format":"prettier --write .","release":"node scripts/release.js","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check .","release:major":"node scripts/release.js major","release:minor":"node scripts/release.js minor","release:patch":"node scripts/release.js patch","prepublishOnly":"npm run typecheck && npm run test && npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:67dc8646-ef34-4899-88ec-5cdd62d9c99b"}},"repository":{"url":"git+https://github.com/binarynoir/vitepress-auto-sidebar.git","type":"git"},"_npmVersion":"12.0.2","description":"Automatically generate a VitePress 2 multi-sidebar config from your docs folder structure, with per-directory ordering, titles, hiding, and exclusion files.","directories":{},"sideEffects":false,"_nodeVersion":"26.9.0","dependencies":{"gray-matter":"^4.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.3.0","eslint":"^10.11.0","vitest":"^5.0.1","prettier":"^3.9.8","typescript":"^6.0.3","@types/node":"^26.6.2","typescript-eslint":"^8.70.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/vitepress-auto-sidebar_0.4.5_1790017745999_0.7846229872541355","host":"s3://npm-registry-packages-npm-production"}},"0.4.6":{"name":"@binarynoir/vitepress-auto-sidebar","version":"0.4.6","keywords":["vitepress","vitepress-plugin","sidebar","docs","documentation"],"author":{"name":"BinaryNoir"},"license":"MIT","_id":"@binarynoir/vitepress-auto-sidebar@0.4.6","maintainers":[{"name":"binarynoir","email":"binarynoir@icloud.com"}],"homepage":"https://github.com/binarynoir/vitepress-auto-sidebar#readme","bugs":{"url":"https://github.com/binarynoir/vitepress-auto-sidebar/issues"},"dist":{"shasum":"33ddd5a394a7bfd0029846bea41d9793dd9be0d5","tarball":"https://registry.npmjs.org/@binarynoir/vitepress-auto-sidebar/-/vitepress-auto-sidebar-0.4.6.tgz","fileCount":9,"integrity":"sha512-blvLSUGGbenQ9s/gxreLSffTW6j2gT6EL+F90M0MDplQ3vautf6wOjVeCOzuQH6rInE8M6fi8tcOxZ7+8bgKLg==","signatures":[{"sig":"MEUCIQD+0Tdl6VimPJ3QsD+K9c2ejRjllI0uRJXzruRlhF3EEwIgBDVnBZT05saC8qbpEnclBUiyrtVWBcbnHKQknyKJzBk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCjY7jsidbOP+oR36Jo/sIhLiv6FeuRfXaCj3Ej9BDvDAIhAJJb8M7QzshiBW9AZoCftpAmw5Efl65726mhzE3zodQK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@binarynoir%2fvitepress-auto-sidebar@0.4.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180056},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./package.json":"./package.json"},"gitHead":"6f9a0ac8d7a6eca888998cd763b4103b82100908","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","format":"prettier --write .","release":"node scripts/release.js","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check .","release:major":"node scripts/release.js major","release:minor":"node scripts/release.js minor","release:patch":"node scripts/release.js patch","prepublishOnly":"npm run typecheck && npm run test && npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:67dc8646-ef34-4899-88ec-5cdd62d9c99b"}},"repository":{"url":"git+https://github.com/binarynoir/vitepress-auto-sidebar.git","type":"git"},"_npmVersion":"12.0.2","description":"Automatically generate a VitePress 2 multi-sidebar config from your docs folder structure, with per-directory ordering, titles, hiding, and exclusion files.","directories":{},"sideEffects":false,"_nodeVersion":"26.9.0","dependencies":{"gray-matter":"^4.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.3.0","eslint":"^10.11.0","vitest":"^5.0.1","prettier":"^3.9.8","typescript":"^6.0.3","@types/node":"^26.6.2","typescript-eslint":"^8.70.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"tmp":"tmp/vitepress-auto-sidebar_0.4.6_1790023184327_0.617214462635082","host":"s3://npm-registry-packages-npm-production"}},"0.4.7":{"_id":"@binarynoir/vitepress-auto-sidebar@0.4.7","bugs":{"url":"https://github.com/binarynoir/vitepress-auto-sidebar/issues"},"dist":{"shasum":"bb9935100da0f920ffcffee4caa4ab0dddfe2588","tarball":"https://registry.npmjs.org/@binarynoir/vitepress-auto-sidebar/-/vitepress-auto-sidebar-0.4.7.tgz","fileCount":9,"integrity":"sha512-+u0Zia5jV1fUKqqicECt2mH4K5I1szrT3o1ZxeG7uMpzbJKbhLzh1GYREiBmXGTQlk+YHGmJ7ywHoW2Ip8ZRHA==","signatures":[{"sig":"MEYCIQDQtUEpjkT3Uq4aXbfXnlUr51gE/prsURyWnG8qTznKHQIhAI7rKpUFIx1CqKU3usEwJVoilQtec+xdLIgIxjUstpy7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDZ3bZjd8iiu7QLs36nafNynB9AKhrcxHADRzbqONvIQQIgX8BWOF85Or8NIBODSXQ3mEqAXIsHZs3gx1B+ElmVugE="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@binarynoir%2fvitepress-auto-sidebar@0.4.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180352},"main":"./dist/index.cjs","name":"@binarynoir/vitepress-auto-sidebar","type":"module","types":"./dist/index.d.ts","author":{"name":"BinaryNoir"},"module":"./dist/index.js","engines":{"node":">=22"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./package.json":"./package.json"},"gitHead":"066e68664845078482bbae72e58d01ad45494ed9","license":"MIT","scripts":{"dev":"tsup --watch","lint":"eslint .","test":"vitest run","build":"tsup","format":"prettier --write .","release":"node scripts/release.js","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check .","release:major":"node scripts/release.js major","release:minor":"node scripts/release.js minor","release:patch":"node scripts/release.js patch","prepublishOnly":"npm run typecheck && npm run test && npm run build"},"version":"0.4.7","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:67dc8646-ef34-4899-88ec-5cdd62d9c99b"}},"homepage":"https://github.com/binarynoir/vitepress-auto-sidebar#readme","keywords":["vitepress","vitepress-plugin","sidebar","docs","documentation"],"repository":{"url":"git+https://github.com/binarynoir/vitepress-auto-sidebar.git","type":"git"},"_npmVersion":"12.1.0","description":"Automatically generate a VitePress 2 multi-sidebar config from your docs folder structure, with per-directory ordering, titles, hiding, and exclusion files.","directories":{},"maintainers":[{"name":"binarynoir","email":"binarynoir@icloud.com"}],"sideEffects":false,"_nodeVersion":"26.10.0","dependencies":{"gray-matter":"^4.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.3.0","eslint":"^10.11.0","vitest":"^5.0.1","prettier":"^3.9.8","typescript":"^6.0.3","@types/node":"^26.6.2","typescript-eslint":"^8.70.0","eslint-config-prettier":"^10.1.8"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/vitepress-auto-sidebar_0.4.7_1790536880917_0.41884770241118474"}}},"time":{"created":"2026-09-10T15:53:59.390Z","modified":"2026-09-27T19:21:21.325Z","0.2.0":"2026-09-10T15:53:59.916Z","0.2.1":"2026-09-10T16:52:13.913Z","0.3.0":"2026-09-10T17:10:53.603Z","0.3.1":"2026-09-10T17:21:27.884Z","0.3.2":"2026-09-10T17:29:28.296Z","0.4.0":"2026-09-10T19:19:39.010Z","0.4.1":"2026-09-10T19:32:00.662Z","0.4.2":"2026-09-10T19:40:25.721Z","0.4.3":"2026-09-21T14:59:39.354Z","0.4.4":"2026-09-21T15:45:35.614Z","0.4.5":"2026-09-21T19:09:06.090Z","0.4.6":"2026-09-21T20:39:44.421Z","0.4.7":"2026-09-27T19:21:20.989Z"},"bugs":{"url":"https://github.com/binarynoir/vitepress-auto-sidebar/issues"},"author":{"name":"BinaryNoir"},"license":"MIT","homepage":"https://github.com/binarynoir/vitepress-auto-sidebar#readme","keywords":["vitepress","vitepress-plugin","sidebar","docs","documentation"],"repository":{"url":"git+https://github.com/binarynoir/vitepress-auto-sidebar.git","type":"git"},"description":"Automatically generate a VitePress 2 multi-sidebar config from your docs folder structure, with per-directory ordering, titles, hiding, and exclusion files.","maintainers":[{"name":"binarynoir","email":"binarynoir@icloud.com"}],"readme":"# vitepress-auto-sidebar\n\n[![npm version](https://img.shields.io/npm/v/@binarynoir/vitepress-auto-sidebar.svg)](https://www.npmjs.com/package/@binarynoir/vitepress-auto-sidebar)\n[![CI](https://github.com/binarynoir/vitepress-auto-sidebar/actions/workflows/ci.yml/badge.svg)](https://github.com/binarynoir/vitepress-auto-sidebar/actions/workflows/ci.yml)\n[![license](https://img.shields.io/npm/l/@binarynoir/vitepress-auto-sidebar.svg)](LICENSE)\n\nA [VitePress 2](https://vitepress.dev) plugin that builds your sidebar\nconfig for you by scanning your docs folder, so you stop hand-maintaining\n`themeConfig.sidebar`.\n\n## What this does\n\nVitePress needs to be told what pages exist and how to group them in the\nsidebar. Normally that means writing and updating a `themeConfig.sidebar`\nlist by hand in your config file, and remembering to touch it every time you\nadd, move, or rename a page.\n\nThis plugin builds that list for you instead, by reading your actual docs\nfolder structure. Add a new Markdown file and it shows up in the sidebar on\nits own, titled from its heading. When you do want a specific order, a\ncustom title, or to hide something, you control that with a small\nplain-text `.sidebar` file dropped into that folder, not a change to your\nconfig code.\n\n## Install\n\n```sh\nnpm install @binarynoir/vitepress-auto-sidebar\n```\n\n## Usage\n\n```ts\n// .vitepress/config.mts\nimport { defineConfig } from 'vitepress';\nimport { generateSidebar } from '@binarynoir/vitepress-auto-sidebar';\nimport path from 'node:path';\n\nexport default defineConfig({\n  themeConfig: {\n    sidebar: generateSidebar(path.resolve(import.meta.dirname, '../docs'), {\n      maxDepth: 3,\n      maxTitleLength: 50,\n      verbose: false,\n    }),\n  },\n});\n```\n\n> **Note:** Use `import.meta.dirname`, not `__dirname` — VitePress config\n> files are ESM, and `__dirname` isn't defined there under VitePress's newer\n> native config loader. If your project uses a plain (non-`.mts`) `config.ts`\n> with `__dirname` already working via bundling, either form works, but\n> `import.meta.dirname` is the forward-compatible choice.\n\n`generateSidebar(rootPath, options?)` walks `rootPath`. Each top-level\nsubdirectory becomes one entry in the returned sidebar, keyed by its URL\nprefix (e.g. `/guides/`); its own subdirectories become sibling groups nested\nunder that same key, matching VitePress's [multi-sidebar](https://vitepress.dev/reference/default-theme-sidebar#multiple-sidebars)\nformat. See [Grouping subdirectories](#grouping-subdirectories) below for how\nthat grouping is controlled.\n\nA directory's landing page — `index.md` if present, otherwise `README.md`\n(both matched case-insensitively; VitePress auto-rewrites either to\n`index.html`) — becomes that section/group's landing link; every other\n`*.md` file becomes a child entry. A file's title is resolved, in order:\n\n1. An explicit title from a `.sidebar` line (see below).\n2. The `title` frontmatter field.\n3. The file's first `# Heading`.\n4. The filename, formatted (`getting-started.md` → \"Getting Started\").\n\nDirectories/files VitePress itself never turns into pages are skipped\nautomatically: anything starting with `.` or `_` (VitePress's own convention\nfor partials/snippets meant to be transcluded, not visited directly), and\n`public/` (VitePress's static-assets root). Anything starting with `-` or\nnamed `assets*` is skipped too, as this generator's own convention for\nnon-page content.\n\n## Options\n\n| Option              | Default        | Description                                                                                                                                                                                                                    |\n| ------------------- | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |\n| `maxDepth`          | `3`            | How many directory levels deep to recurse.                                                                                                                                                                                     |\n| `maxTitleLength`    | `50`           | Truncate generated titles beyond this length.                                                                                                                                                                                  |\n| `configFilenames`   | `['.sidebar']` | Filenames checked for per-directory ordering config.                                                                                                                                                                           |\n| `excludeFilenames`  | `['.exclude']` | Filenames checked for per-directory exclusion rules.                                                                                                                                                                           |\n| `collapsed`         | `false`        | Initial `collapsed` state applied to generated section headers (the ones that still have `items` after flattening, see below).                                                                                                 |\n| `flattenSinglePage` | `true`         | Collapse a subdirectory into a plain link in its parent group instead of its own sibling group, when it has only one visible entry (typically just its landing page). See [Grouping subdirectories](#grouping-subdirectories). |\n| `verbose`           | `false`        | Log each directory as it's processed.                                                                                                                                                                                          |\n\n## Grouping subdirectories\n\nEach top-level docs directory (`engineering/`, `guides/`, ...) becomes its\nown group with its own URL prefix. By default (`flattenSinglePage: true`), a\n_subdirectory_ of that top-level directory only gets promoted to its own\nsibling group if it actually has more than one visible entry (more pages, or\na subdirectory of its own). A subdirectory that has nothing in it besides its\nown landing page is nested as a plain link inside its parent's group instead\n— there's nothing to expand, so a whole separate collapsible group next to\nits parent would just be visual noise.\n\nGiven:\n\n```text\ndocs/\n  engineering/\n    README.md\n    architecture/\n      README.md              # only page in this subdirectory\n    api-reference/\n      README.md\n      authentication.md\n      endpoints.md             # multiple pages\n```\n\nthe generated `/engineering/` sidebar has one top-level group, not two:\n\n```text\nEngineering\n  ├─ Engineering\n  └─ Architecture            ← nested plain link (architecture/ has only its own README)\nAPI Reference                 ← still promoted to its own sibling group (has 3 pages)\n  ├─ API Reference\n  ├─ Authentication\n  └─ Endpoints\n```\n\nA nested link's label comes from the _directory's_ resolved title — the same\ntitle a group header would have used (an explicit `.sidebar` override, then\n`section-title` frontmatter, then the formatted directory name) — not the\nlanding page's own frontmatter/heading title, so it stays consistent with\nany sibling group headers next to it. Its position among its parent's other\nentries (files, web links) follows the same `.sidebar` ordering rules as\neverything else in that directory.\n\nSet `flattenSinglePage: false` to always promote every subdirectory to its\nown sibling group, even single-page ones — this matches the behavior of\n`0.3.0` and earlier, before this option existed:\n\n```ts\ngenerateSidebar(docsRoot, { flattenSinglePage: false });\n```\n\n## `.sidebar` files\n\nDrop a `.sidebar` file into any docs directory to control the order and\ntitles of its contents (files, subdirectories, and web links) without\ntouching config code. Lines starting with `#` are comments.\n\n```txt\n# docs/guides/.sidebar\n\nintroduction.md:Intro\ngetting-started.md:\"Getting Started\"\nROOT=\"https://status.example.com\":Status\nadvanced-topics\n...\nmigrations.md:Migrations\n\"https://example.com/faq\":FAQ\n```\n\n| Syntax                      | Meaning                                                                 |\n| --------------------------- | ----------------------------------------------------------------------- |\n| `name`                      | Order this file/subdirectory.                                           |\n| `name:Custom Title`         | Order it and override its display title.                                |\n| `\"https://…\":Title`         | Insert an external link into this section, in place.                    |\n| `ROOT=\"https://…\":Title`    | Insert an external link at the top level of the enclosing section.      |\n| `...`                       | Everything not listed explicitly goes here, alphabetically.             |\n| `-name`                     | Hide this entry entirely (it's still on disk, just not in the sidebar). |\n| `.hide`                     | Hide _this_ directory's own link, but keep showing its children.        |\n| `.hideall` (or `.hide-all`) | Skip this directory and everything under it.                            |\n\n`name` is matched against the exact on-disk entry: a **file** entry needs its\n`.md` extension (`introduction.md`, not `introduction`). A file line missing\nits extension won't match anything — it's silently dropped into the\nalphabetical `...` bucket instead of being ordered/retitled.\n\nOrdering: items listed before `...` come first, in the order listed; items\nlisted after `...` come last, in the order listed; everything else is\ninserted alphabetically at the `...` marker (or appended alphabetically, if\nthere's no `...` at all).\n\nA directory's own section/group title is resolved, in order: an explicit\n`name:Title` for it in its _parent's_ `.sidebar`, then a `section-title`\nfrontmatter field on its own `README.md`, then its formatted directory name.\n\n## `.exclude` files\n\nDrop a `.exclude` file into a directory to remove files/subdirectories from\nthe generated sidebar (e.g. drafts, or content excluded from the VitePress\nbuild itself) without deleting them:\n\n```txt\n# docs/products/.exclude\n\ndraft/\ninternal-*.md\n```\n\n- A trailing `/` marks a directory-only pattern (matches the directory and\n  everything under it).\n- `*` and `?` are supported as glob wildcards.\n- A lone `.` excludes the directory the `.exclude` file itself lives in.\n\n## `sidebar.json` escape hatch\n\nFor a directory whose sidebar you'd rather hand-author outright, drop a\n`sidebar.json` next to it containing the exact object VitePress expects for\nthat URL prefix — it's used verbatim, and generation for that directory stops\nthere:\n\n```json\n{\n  \"/products/\": [{ \"text\": \"Custom Group\", \"link\": \"/products/\", \"items\": [] }]\n}\n```\n\n## Why not VitePress's built-in `getSidebar`?\n\nVitePress can build a _flat_ sidebar from a directory automatically, but it\ndoesn't support nested multi-level sections, per-directory ordering, hiding,\nor external links without writing that logic yourself. This package covers\nthat gap while staying data-driven — reordering docs is a `.sidebar` file\nedit, not a `config.ts` change.\n\n## Releasing\n\nReleases are tag-triggered. To ship a new version, from a clean `main` that's\nin sync with `origin/main`:\n\n```sh\nnpm run release:patch   # or release:minor / release:major\n```\n\nThis runs typecheck/lint/test/build locally, then `npm version <bump>`\n(bumps `package.json`, commits, and creates a matching `vX.Y.Z` tag) and\n`git push --follow-tags`. Pushing that tag triggers\n[`.github/workflows/release.yml`](.github/workflows/release.yml), which\nre-runs the checks, publishes to npm (with\n[provenance](https://docs.npmjs.com/generating-provenance-statements)), and\ncreates a GitHub release with auto-generated notes.\n\nFor a prerelease or an explicit version, use `npm run release -- <arg>`\n(e.g. `npm run release -- 1.2.3` or `npm run release -- prerelease`) — see\n[`npm version`](https://docs.npmjs.com/cli/v10/commands/npm-version) for the\nfull list of accepted values.\n\nThis requires an `NPM_TOKEN` repository secret (an npm\n[automation token](https://docs.npmjs.com/creating-and-viewing-access-tokens)\nwith publish access) — set it under Settings → Secrets and variables →\nActions.\n\n## License\n\nMIT\n","readmeFilename":"README.md"}