{"_id":"@a24z/markdown-search","_rev":"8-c52480cd29619e22737abbaa70c655dc","name":"@a24z/markdown-search","dist-tags":{"latest":"2.0.6"},"versions":{"1.0.0":{"name":"@a24z/markdown-search","version":"1.0.0","keywords":["markdown","search","full-text-search","flexsearch","bun","indexing"],"author":{"name":"A24Z Team"},"license":"MIT","_id":"@a24z/markdown-search@1.0.0","maintainers":[{"name":"principal-ai","email":"principle@principlemd.com"}],"homepage":"https://github.com/a24z/markdown-search#readme","bugs":{"url":"https://github.com/a24z/markdown-search/issues"},"dist":{"shasum":"f475576e1f3346af16e59bbbb7c24c42a10067b3","tarball":"https://registry.npmjs.org/@a24z/markdown-search/-/markdown-search-1.0.0.tgz","fileCount":45,"integrity":"sha512-/NDYewss4pgQT13+nMKhiKl21pvSHdWxDoE+5sF0gV+zgQKyPJh9JNa6RGNPVq5wCiEMfeAGKiieKZVR2EezaA==","signatures":[{"sig":"MEUCIDhPgrX5lrvzvpTQoaPbj1rNg2qGrS7mzhn8+OH0gMySAiEAoerWVrVlIwWDF1tbeO4EP6HxeRSdADrOx3grFTCFu5s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":207513},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./adapters":{"types":"./dist/adapters/index.d.ts","import":"./dist/adapters/index.js"}},"scripts":{"dev":"bun --watch src/index.ts","test":"bun test","build":"bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly","format":"prettier --write .","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"principal-ai","email":"principle@principlemd.com"},"repository":{"url":"git+https://github.com/a24z/markdown-search.git","type":"git"},"_npmVersion":"10.9.2","description":"High-performance full-text search for markdown documents","directories":{},"_nodeVersion":"23.11.0","dependencies":{"flexsearch":"^0.8.205","@types/flexsearch":"^0.7.6","@a24z/markdown-utils":"latest"},"_hasShrinkwrap":false,"devDependencies":{"prettier":"^3.6.2","@types/bun":"latest","typescript":"^5.0.4"},"peerDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/markdown-search_1.0.0_1757506802784_0.773783504331552","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@a24z/markdown-search","version":"2.0.0","keywords":["markdown","search","full-text-search","flexsearch","bun","indexing"],"author":{"name":"A24Z Team"},"license":"MIT","_id":"@a24z/markdown-search@2.0.0","maintainers":[{"name":"principal-ai","email":"principle@principlemd.com"}],"homepage":"https://github.com/a24z-ai/markdown-search#readme","bugs":{"url":"https://github.com/a24z-ai/markdown-search/issues"},"dist":{"shasum":"4313f4abc232c9430a7effe1b5350b42bcdf50fe","tarball":"https://registry.npmjs.org/@a24z/markdown-search/-/markdown-search-2.0.0.tgz","fileCount":140,"integrity":"sha512-7OtMoFSSuFAbPshF9gd4AAJP4QFZC/V1m3GwSB0pVLqoMIIKNcZlJ3IIYEq9fTNacmMoZMi1unKPLsCLSA/A8w==","signatures":[{"sig":"MEUCIQC9qoEDVyZpW7iOkP5cywELURpuBteoxyeaa2LY9oG2vwIgdw/VNYoFEQ22aKiiVO7ZkGmeStA8Jd1Qkd02hJnhoP4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":329885},"main":"./dist/cjs/index.js","types":"./dist/esm/index.d.ts","module":"./dist/esm/index.js","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/esm/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./adapters":{"types":"./dist/esm/adapters/index.d.ts","import":"./dist/esm/adapters/index.js","require":"./dist/cjs/adapters/index.js"}},"gitHead":"dfbd023fcfe226bf1a028138ef3e06eb75e728ed","scripts":{"dev":"bun --watch src/index.ts","test":"bun test","build":"npm run build:clean && npm run build:esm && npm run build:cjs && npm run build:copy-package-files","format":"prettier --write .","prepare":"husky","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","build:clean":"rm -rf dist","prepublishOnly":"bun run build","build:copy-package-files":"echo '{\"type\":\"module\"}' > dist/esm/package.json && echo '{\"type\":\"commonjs\"}' > dist/cjs/package.json"},"_npmUser":{"name":"principal-ai","email":"principle@principlemd.com"},"repository":{"url":"git+https://github.com/a24z-ai/markdown-search.git","type":"git"},"_npmVersion":"10.9.2","description":"High-performance full-text search for markdown documents","directories":{},"_nodeVersion":"23.11.0","dependencies":{"flexsearch":"^0.8.205","@types/flexsearch":"^0.7.6","@a24z/markdown-utils":"latest"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","prettier":"^3.6.2","@types/bun":"latest","typescript":"^5.0.4"},"_npmOperationalInternal":{"tmp":"tmp/markdown-search_2.0.0_1757575301893_0.02316287556658514","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@a24z/markdown-search","version":"2.0.1","keywords":["markdown","search","full-text-search","flexsearch","bun","indexing"],"author":{"name":"A24Z Team"},"license":"MIT","_id":"@a24z/markdown-search@2.0.1","maintainers":[{"name":"fernando-ram-lugo","email":"principle@principlemd.com"}],"homepage":"https://github.com/a24z-ai/markdown-search#readme","bugs":{"url":"https://github.com/a24z-ai/markdown-search/issues"},"dist":{"shasum":"9cd9dbc9c8b3c4a8b867027ccc438a84fd9ce59b","tarball":"https://registry.npmjs.org/@a24z/markdown-search/-/markdown-search-2.0.1.tgz","fileCount":140,"integrity":"sha512-LqPcJITIGjF4Kw4wJKFWqy6KyfzqObGFZHZOHbIme/H+Um4Hg6pzpNTDvFGwxB3pgI09/piRB9W5n5QV2gmnYw==","signatures":[{"sig":"MEYCIQC/QShyb0vlRzEmlJGS6kt+Bxu8WchdE2l4KVcxmyUYzwIhAK7HZ7yWMU4T8dXG+juvL+69+fvl5wd0IdY1k3D9pIQf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":332198},"main":"./dist/cjs/index.js","types":"./dist/esm/index.d.ts","module":"./dist/esm/index.js","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/esm/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./adapters":{"types":"./dist/esm/adapters/index.d.ts","import":"./dist/esm/adapters/index.js","require":"./dist/cjs/adapters/index.js"}},"gitHead":"4c9faac2f8f3a9932c74b8721b278524312a8135","scripts":{"dev":"bun --watch src/index.ts","lint":"eslint .","test":"bun test","build":"npm run build:clean && npm run build:esm && npm run build:cjs && npm run build:copy-package-files","format":"prettier --write .","prepare":"husky","lint:fix":"eslint . --fix","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","build:clean":"rm -rf dist","prepublishOnly":"bun run build","build:copy-package-files":"echo '{\"type\":\"module\"}' > dist/esm/package.json && echo '{\"type\":\"commonjs\"}' > dist/cjs/package.json"},"_npmUser":{"name":"fernando-ram-lugo","email":"principle@principlemd.com"},"repository":{"url":"git+https://github.com/a24z-ai/markdown-search.git","type":"git"},"_npmVersion":"10.9.2","description":"High-performance full-text search for markdown documents","directories":{},"_nodeVersion":"23.11.0","dependencies":{"flexsearch":"^0.8.205","@types/flexsearch":"^0.7.6","@a24z/markdown-utils":"latest"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","eslint":"^9.35.0","prettier":"^3.6.2","@types/bun":"latest","typescript":"^5.0.4","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.44.0","@typescript-eslint/eslint-plugin":"^8.44.0"},"_npmOperationalInternal":{"tmp":"tmp/markdown-search_2.0.1_1758215259023_0.5454169998295426","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"@a24z/markdown-search","version":"2.0.2","keywords":["markdown","search","full-text-search","flexsearch","bun","indexing"],"author":{"name":"A24Z Team"},"license":"MIT","_id":"@a24z/markdown-search@2.0.2","maintainers":[{"name":"fernando-ram-lugo","email":"principle@principlemd.com"}],"homepage":"https://github.com/a24z-ai/markdown-search#readme","bugs":{"url":"https://github.com/a24z-ai/markdown-search/issues"},"dist":{"shasum":"f57f506643f96e257473b5bafcc2b68ad8163ade","tarball":"https://registry.npmjs.org/@a24z/markdown-search/-/markdown-search-2.0.2.tgz","fileCount":140,"integrity":"sha512-MZG1pMOrYSnVgB4EKxCmr4/dN12Re8wIY2Yl8c+tzFo9PBjKLfnJP92iKUZ0iF8193oQy/5QYf/MkQ5+tRY6Rw==","signatures":[{"sig":"MEUCIQCaO7oPL4Qs+K247yLGO9WWOChcG/gCFJo/6lMk8noBSAIgDYXDnUOw52dU5tjnrjimHQyh9xsL4DzcrmSDrLKmlBE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":343040},"main":"./dist/cjs/index.js","types":"./dist/esm/index.d.ts","module":"./dist/esm/index.js","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/esm/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./adapters":{"types":"./dist/esm/adapters/index.d.ts","import":"./dist/esm/adapters/index.js","require":"./dist/cjs/adapters/index.js"}},"gitHead":"4c9faac2f8f3a9932c74b8721b278524312a8135","scripts":{"dev":"bun --watch src/index.ts","lint":"eslint .","test":"bun test","build":"npm run build:clean && npm run build:esm && npm run build:cjs && npm run build:copy-package-files","format":"prettier --write .","prepare":"husky","lint:fix":"eslint . --fix","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","build:clean":"rm -rf dist","prepublishOnly":"bun run build","build:copy-package-files":"echo '{\"type\":\"module\"}' > dist/esm/package.json && echo '{\"type\":\"commonjs\"}' > dist/cjs/package.json"},"_npmUser":{"name":"fernando-ram-lugo","email":"principle@principlemd.com"},"repository":{"url":"git+https://github.com/a24z-ai/markdown-search.git","type":"git"},"_npmVersion":"10.9.2","description":"High-performance full-text search for markdown documents","directories":{},"_nodeVersion":"23.11.0","dependencies":{"flexsearch":"^0.8.205","@types/flexsearch":"^0.7.6","@a24z/markdown-utils":"latest"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","eslint":"^9.35.0","prettier":"^3.6.2","@types/bun":"latest","typescript":"^5.0.4","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.44.0","@typescript-eslint/eslint-plugin":"^8.44.0"},"_npmOperationalInternal":{"tmp":"tmp/markdown-search_2.0.2_1758217490323_0.9061712828124011","host":"s3://npm-registry-packages-npm-production"}},"2.0.3":{"name":"@a24z/markdown-search","version":"2.0.3","keywords":["markdown","search","full-text-search","flexsearch","bun","indexing"],"author":{"name":"A24Z Team"},"license":"MIT","_id":"@a24z/markdown-search@2.0.3","maintainers":[{"name":"fernando-ram-lugo","email":"principle@principlemd.com"}],"homepage":"https://github.com/a24z-ai/markdown-search#readme","bugs":{"url":"https://github.com/a24z-ai/markdown-search/issues"},"dist":{"shasum":"467b0d8e2376c5f06f010468c42d2f5d91e18ada","tarball":"https://registry.npmjs.org/@a24z/markdown-search/-/markdown-search-2.0.3.tgz","fileCount":140,"integrity":"sha512-OLw+iDFBPZt32uSMUS3FMQ0puhL4POHcYkf1dOH7k+c2Fw34fx9IzaMbVU5tgtmozdkFQaA+nEWyWpPF1B67bA==","signatures":[{"sig":"MEYCIQCEL/HWAXCGzRhEA22UZOo3+ADikey9u1j6TnAJsC/s7gIhANFqxCya7kAZwe+58Ajy6UvHHGGTutB/PYnfn9nMIGVf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":343428},"main":"./dist/cjs/index.js","types":"./dist/esm/index.d.ts","module":"./dist/esm/index.js","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/esm/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./adapters":{"types":"./dist/esm/adapters/index.d.ts","import":"./dist/esm/adapters/index.js","require":"./dist/cjs/adapters/index.js"}},"gitHead":"4c9faac2f8f3a9932c74b8721b278524312a8135","scripts":{"dev":"bun --watch src/index.ts","lint":"eslint .","test":"bun test","build":"npm run build:clean && npm run build:esm && npm run build:cjs && npm run build:copy-package-files","format":"prettier --write .","prepare":"husky","lint:fix":"eslint . --fix","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","build:clean":"rm -rf dist","prepublishOnly":"bun run build","build:copy-package-files":"echo '{\"type\":\"module\"}' > dist/esm/package.json && echo '{\"type\":\"commonjs\"}' > dist/cjs/package.json"},"_npmUser":{"name":"fernando-ram-lugo","email":"principle@principlemd.com"},"repository":{"url":"git+https://github.com/a24z-ai/markdown-search.git","type":"git"},"_npmVersion":"10.9.2","description":"High-performance full-text search for markdown documents","directories":{},"_nodeVersion":"23.11.0","dependencies":{"flexsearch":"^0.8.205","@types/flexsearch":"^0.7.6","@a24z/markdown-utils":"latest"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","eslint":"^9.35.0","prettier":"^3.6.2","@types/bun":"latest","typescript":"^5.0.4","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.44.0","@typescript-eslint/eslint-plugin":"^8.44.0"},"_npmOperationalInternal":{"tmp":"tmp/markdown-search_2.0.3_1758222934926_0.6847288307607362","host":"s3://npm-registry-packages-npm-production"}},"2.0.4":{"name":"@a24z/markdown-search","version":"2.0.4","keywords":["markdown","search","full-text-search","flexsearch","bun","indexing"],"author":{"name":"A24Z Team"},"license":"MIT","_id":"@a24z/markdown-search@2.0.4","maintainers":[{"name":"fernando-ram-lugo","email":"principle@principlemd.com"}],"homepage":"https://github.com/a24z-ai/markdown-search#readme","bugs":{"url":"https://github.com/a24z-ai/markdown-search/issues"},"dist":{"shasum":"0f3778ca7cc7945c78e2c6954b22b25508ff4516","tarball":"https://registry.npmjs.org/@a24z/markdown-search/-/markdown-search-2.0.4.tgz","fileCount":140,"integrity":"sha512-kDw4VQlfayZVAv9TIdRSxe9LdmLquoSn+QD3DEL+e5M9X+OxLpOcSCfxtx2k27xGowB6O5dP3foS7XqpJl7rfQ==","signatures":[{"sig":"MEYCIQCiVHIfQ5fDYjYq2xoUszagatM98/O7GWB8bh073ecd3wIhALGvfbY5SRloba7IXw3MAiSYd6Mr4ZHH/AWQAzCpYpTA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":344422},"main":"./dist/cjs/index.js","types":"./dist/esm/index.d.ts","module":"./dist/esm/index.js","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/esm/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./adapters":{"types":"./dist/esm/adapters/index.d.ts","import":"./dist/esm/adapters/index.js","require":"./dist/cjs/adapters/index.js"}},"gitHead":"4c9faac2f8f3a9932c74b8721b278524312a8135","scripts":{"dev":"bun --watch src/index.ts","lint":"eslint .","test":"bun test","build":"npm run build:clean && npm run build:esm && npm run build:cjs && npm run build:copy-package-files","format":"prettier --write .","prepare":"husky","lint:fix":"eslint . --fix","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","build:clean":"rm -rf dist","prepublishOnly":"bun run build","build:copy-package-files":"echo '{\"type\":\"module\"}' > dist/esm/package.json && echo '{\"type\":\"commonjs\"}' > dist/cjs/package.json"},"_npmUser":{"name":"fernando-ram-lugo","email":"principle@principlemd.com"},"repository":{"url":"git+https://github.com/a24z-ai/markdown-search.git","type":"git"},"_npmVersion":"10.9.2","description":"High-performance full-text search for markdown documents","directories":{},"_nodeVersion":"23.11.0","dependencies":{"flexsearch":"^0.8.205","@types/flexsearch":"^0.7.6","@a24z/markdown-utils":"latest"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","eslint":"^9.35.0","prettier":"^3.6.2","@types/bun":"latest","typescript":"^5.0.4","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.44.0","@typescript-eslint/eslint-plugin":"^8.44.0"},"_npmOperationalInternal":{"tmp":"tmp/markdown-search_2.0.4_1758223515242_0.4830568986847952","host":"s3://npm-registry-packages-npm-production"}},"2.0.5":{"name":"@a24z/markdown-search","version":"2.0.5","keywords":["markdown","search","full-text-search","flexsearch","bun","indexing"],"author":"A24Z Team","license":"MIT","_id":"@a24z/markdown-search@2.0.5","maintainers":[{"name":"fernando-ram-lugo","email":"principle@principlemd.com"}],"dist":{"shasum":"f1bb720112df5d845cad9467a0a9b46d55af6777","tarball":"https://registry.npmjs.org/@a24z/markdown-search/-/markdown-search-2.0.5.tgz","fileCount":140,"integrity":"sha512-WvA6jUelbLNEQCAZe6qsZYNVxfRtM/n4OVG0ul0voNsG8u2PwKAHX7MbqwgCXBNLVyldJATZiyKA7l04qTYkvA==","signatures":[{"sig":"MEUCIQDceZRl+/d5vy9lXQKUcC6RFJ/fLCGRpXbS9BJHTxh0ewIgaWjf2zamJugPOs8x7TSsP2IzWQ8P7PWO6BqMLMIHxiY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":353011},"main":"./dist/cjs/index.js","types":"./dist/esm/index.d.ts","module":"./dist/esm/index.js","shasum":"f1bb720112df5d845cad9467a0a9b46d55af6777","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/esm/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./adapters":{"types":"./dist/esm/adapters/index.d.ts","import":"./dist/esm/adapters/index.js","require":"./dist/cjs/adapters/index.js"}},"scripts":{"dev":"bun --watch src/index.ts","lint":"eslint .","test":"bun test","build":"npm run build:clean && npm run build:esm && npm run build:cjs && npm run build:copy-package-files","format":"prettier --write .","lint:fix":"eslint . --fix","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","test:large":"node test-large-indexing.js","build:clean":"rm -rf dist","test:large:gc":"node --expose-gc test-large-indexing.js","prepublishOnly":"bun run build","test:large:heap":"node --max-old-space-size=4096 --expose-gc test-large-indexing.js","build:copy-package-files":"echo '{\"type\":\"module\"}' > dist/esm/package.json && echo '{\"type\":\"commonjs\"}' > dist/cjs/package.json"},"_npmUser":{"name":"fernando-ram-lugo","email":"principle@principlemd.com"},"_integrity":"sha512-WvA6jUelbLNEQCAZe6qsZYNVxfRtM/n4OVG0ul0voNsG8u2PwKAHX7MbqwgCXBNLVyldJATZiyKA7l04qTYkvA==","repository":{"url":"https://github.com/a24z-ai/markdown-search.git","type":"git"},"_npmVersion":"10.8.3","description":"High-performance full-text search for markdown documents","directories":{},"_nodeVersion":"24.3.0","dependencies":{"flexsearch":"^0.8.205","@types/flexsearch":"^0.7.6","@a24z/markdown-utils":"latest"},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","eslint":"^9.35.0","prettier":"^3.6.2","@types/bun":"latest","typescript":"^5.0.4","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","@typescript-eslint/parser":"^8.44.0","@typescript-eslint/eslint-plugin":"^8.44.0"},"_npmOperationalInternal":{"tmp":"tmp/markdown-search_2.0.5_1758225379567_0.9096918305755002","host":"s3://npm-registry-packages-npm-production"}},"2.0.6":{"name":"@a24z/markdown-search","version":"2.0.6","description":"High-performance full-text search for markdown documents","main":"./dist/cjs/index.js","module":"./dist/esm/index.js","types":"./dist/esm/index.d.ts","exports":{".":{"types":"./dist/esm/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./adapters":{"types":"./dist/esm/adapters/index.d.ts","import":"./dist/esm/adapters/index.js","require":"./dist/cjs/adapters/index.js"}},"scripts":{"build":"npm run build:clean && npm run build:esm && npm run build:cjs && npm run build:copy-package-files","build:clean":"rm -rf dist","build:esm":"tsc -p tsconfig.esm.json","build:cjs":"tsc -p tsconfig.cjs.json","build:copy-package-files":"echo '{\"type\":\"module\"}' > dist/esm/package.json && echo '{\"type\":\"commonjs\"}' > dist/cjs/package.json","dev":"bun --watch src/index.ts","test":"bun test","test:large":"node test-large-indexing.js","test:large:gc":"node --expose-gc test-large-indexing.js","test:large:heap":"node --max-old-space-size=4096 --expose-gc test-large-indexing.js","typecheck":"tsc --noEmit","lint":"eslint .","lint:fix":"eslint . --fix","format":"prettier --write .","prepublishOnly":"bun run build"},"keywords":["markdown","search","full-text-search","flexsearch","bun","indexing"],"author":{"name":"A24Z Team"},"license":"MIT","dependencies":{"@a24z/markdown-utils":"latest","@types/flexsearch":"^0.7.6","flexsearch":"^0.8.205"},"devDependencies":{"@types/bun":"latest","@typescript-eslint/eslint-plugin":"^8.44.0","@typescript-eslint/parser":"^8.44.0","eslint":"^9.35.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.4","husky":"^9.1.7","prettier":"^3.6.2","typescript":"^5.0.4"},"engines":{"bun":">=1.0.0"},"repository":{"type":"git","url":"git+https://github.com/a24z-ai/markdown-search.git"},"_id":"@a24z/markdown-search@2.0.6","gitHead":"d65326cdf06d2e68e3c4ef9867b219baad06565e","bugs":{"url":"https://github.com/a24z-ai/markdown-search/issues"},"homepage":"https://github.com/a24z-ai/markdown-search#readme","_nodeVersion":"23.11.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-lXZmUxUhhqi1S3E8S4W7iOjxmXgA0YNFPntDoRXl1XzWP3J+EZO2Xx5bNKvoeF4vCH8bGzyzOTkfcBT4KEIoPw==","shasum":"58619f18215041578c59dab378f8ebc0d68068e2","tarball":"https://registry.npmjs.org/@a24z/markdown-search/-/markdown-search-2.0.6.tgz","fileCount":140,"unpackedSize":390997,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIHoj5GWvBQoEYMqx7B2qebqRfLMXQ7wvliXKE4mbXvYUAiEAru1f3CPz0rC27IKP2z+n6Is2NoUIPJ7QSxJGhdfrn8M="}]},"_npmUser":{"name":"fernando-ram-lugo","email":"principle@principlemd.com"},"directories":{},"maintainers":[{"name":"fernando-ram-lugo","email":"principle@principlemd.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/markdown-search_2.0.6_1758245478071_0.8506729823179671"},"_hasShrinkwrap":false}},"time":{"created":"2025-09-10T12:20:02.680Z","modified":"2025-09-19T01:31:18.543Z","1.0.0":"2025-09-10T12:20:02.979Z","2.0.0":"2025-09-11T07:21:42.120Z","2.0.1":"2025-09-18T17:07:39.313Z","2.0.2":"2025-09-18T17:44:50.548Z","2.0.3":"2025-09-18T19:15:35.130Z","2.0.4":"2025-09-18T19:25:15.424Z","2.0.5":"2025-09-18T19:56:19.794Z","2.0.6":"2025-09-19T01:31:18.307Z"},"author":{"name":"A24Z Team"},"license":"MIT","keywords":["markdown","search","full-text-search","flexsearch","bun","indexing"],"repository":{"type":"git","url":"git+https://github.com/a24z-ai/markdown-search.git"},"description":"High-performance full-text search for markdown documents","maintainers":[{"name":"fernando-ram-lugo","email":"principle@principlemd.com"}],"readme":"# @a24z/markdown-search\n\nHigh-performance full-text search for markdown documents using FlexSearch and Bun.\n\n## Features\n\n- 🚀 **Fast Performance** - Built on Bun runtime for blazing fast file operations\n- 🔍 **Full-Text Search** - Powered by FlexSearch for efficient indexing and searching\n- 📝 **Markdown-Optimized** - Understands markdown structure (sections, code blocks, tables, etc.)\n- 🎯 **Flexible Searching** - Search by document type, language, with fuzzy matching\n- 💾 **Persistent Indexes** - Save and load search indexes for instant startup\n- 🔌 **Extensible** - Adapter pattern for different platforms (Node, VS Code, etc.)\n- 🏗️ **TypeScript** - Full TypeScript support with comprehensive types\n\n## Installation\n\n```bash\nbun add @a24z/markdown-search\n```\n\nOr with npm:\n\n```bash\nnpm install @a24z/markdown-search\n```\n\n## Quick Start\n\n```typescript\nimport { createSearchEngine } from '@a24z/markdown-search';\n\n// Create a search engine instance\nconst searchEngine = createSearchEngine({\n  rootPath: './docs',        // Directory to search\n  storagePath: '.search',    // Where to store the index\n  indexKey: 'my-docs'        // Name for this index\n});\n\n// Initialize and index files\nawait searchEngine.initialize();\nawait searchEngine.indexFiles();\n\n// Search for content\nconst results = await searchEngine.search('your query');\n\nresults.forEach(result => {\n  console.log(`${result.title} (${result.type})`);\n  console.log(`Score: ${result.score}`);\n  console.log(`File: ${result.fileName}`);\n});\n```\n\n## Advanced Usage\n\n### Custom Configuration\n\n```typescript\nimport { \n  SearchEngine, \n  NodeFileSystemAdapter, \n  NodeStorageAdapter,\n  SearchEngineFactory \n} from '@a24z/markdown-search';\n\nconst searchEngine = new SearchEngine({\n  fileSystem: new NodeFileSystemAdapter('./docs'),\n  storage: new NodeStorageAdapter('.search-index'),\n  searchEngine: SearchEngineFactory.create('flexsearch', {\n    // FlexSearch options\n    tokenize: 'forward',\n    resolution: 9,\n    depth: 3,\n  })\n});\n```\n\n### Indexing with Progress\n\n```typescript\nawait searchEngine.indexFiles({\n  onProgress: (progress) => {\n    console.log(`${progress.phase}: ${progress.percentage}%`);\n    if (progress.currentFile) {\n      console.log(`Processing: ${progress.currentFile}`);\n    }\n  },\n  batchSize: 10,\n  indexChunks: true, // Index individual code blocks, tables, etc.\n});\n```\n\n### Search Options\n\n```typescript\nconst results = await searchEngine.search('query', {\n  // Filter by document type\n  types: ['section', 'code', 'table'],\n  \n  // Filter by programming language (for code blocks)\n  languages: ['typescript', 'javascript'],\n  \n  // Fuzzy search threshold (0-1)\n  fuzzyThreshold: 0.8,\n  \n  // Pagination\n  limit: 10,\n  offset: 0,\n  \n  // Search specific fields\n  fields: ['content', 'title'],\n  \n  // Sort options\n  sortBy: 'relevance',\n  sortOrder: 'desc'\n});\n```\n\n### Document Types\n\nThe search engine understands different types of markdown content:\n\n- `document` - Entire markdown file\n- `section` - Document sections (based on headings)\n- `code` - Code blocks with language detection\n- `mermaid` - Mermaid diagrams\n- `table` - Markdown tables\n- `heading` - Individual headings\n- `paragraph` - Regular text paragraphs\n- `list` - List items\n- `blockquote` - Quoted text\n\n### Updating the Index\n\n```typescript\n// Update specific files\nawait searchEngine.updateFiles([\n  '/path/to/file1.md',\n  '/path/to/file2.md'\n]);\n\n// Clear and rebuild index\nawait searchEngine.clearIndex();\nawait searchEngine.indexFiles();\n```\n\n### Index Management\n\n```typescript\n// Check if index exists\nconst hasIndex = await searchEngine.hasIndex();\n\n// Get index statistics\nconst stats = await searchEngine.getStats();\nconsole.log(`Total files: ${stats.totalFiles}`);\nconsole.log(`Total documents: ${stats.totalDocuments}`);\n\n// Export/Import index for backup\nconst indexData = await searchEngine.getSearchAdapter().exportIndex();\n// ... save indexData somewhere ...\n\n// Later, import it back\nawait searchEngine.getSearchAdapter().importIndex(indexData);\n```\n\n## Platform Support\n\n### Node.js/Bun (Default)\n\nThe package includes built-in adapters for Node.js and Bun environments:\n\n- `NodeFileSystemAdapter` - File system operations using Bun's fast APIs\n- `NodeStorageAdapter` - File-based storage for indexes\n\n### VS Code Extension\n\nThe package maintains compatibility with VS Code extensions through included VS Code adapters:\n\n```typescript\nimport { \n  VSCodeFileSystemAdapter, \n  VSCodeStorageAdapter \n} from '@a24z/markdown-search/adapters';\n```\n\n### Custom Adapters\n\nYou can create custom adapters for other platforms:\n\n```typescript\nclass MyCustomFileSystemAdapter implements SearchFileSystemAdapter {\n  async findMarkdownFiles(options?: FindOptions): Promise<FileInfo[]> {\n    // Your implementation\n  }\n  \n  async readFile(path: string): Promise<string> {\n    // Your implementation\n  }\n  \n  // ... other required methods\n}\n```\n\n## API Reference\n\n### SearchEngine\n\nThe main class for searching markdown documents.\n\n#### Constructor\n\n```typescript\nnew SearchEngine(config: SearchEngineConfig, indexKey?: string)\n```\n\n#### Methods\n\n- `initialize(): Promise<void>` - Initialize the search engine\n- `indexFiles(options?: IndexingOptions): Promise<IndexResult>` - Index all markdown files\n- `search(query: string, options?: SearchOptions): Promise<SearchResult[]>` - Search the index\n- `updateFiles(paths: string[], options?: IndexingOptions): Promise<IndexResult>` - Update specific files\n- `clearIndex(): Promise<void>` - Clear the entire index\n- `hasIndex(): Promise<boolean>` - Check if index exists\n- `getStats(): Promise<SearchIndexStats | null>` - Get index statistics\n\n### Types\n\nSee the [types.ts](src/types.ts) file for all available TypeScript types.\n\n## Examples\n\nCheck the [examples](examples/) directory for more usage examples:\n\n- [basic-search.ts](examples/basic-search.ts) - Basic search functionality\n\n## Performance\n\nThe package is optimized for performance:\n\n- **Bun Runtime**: Leverages Bun's fast file I/O operations\n- **Batch Processing**: Indexes files in configurable batches\n- **Incremental Updates**: Only re-index changed files\n- **Persistent Indexes**: Load pre-built indexes instantly\n\n## Development\n\n```bash\n# Install dependencies\nbun install\n\n# Run tests\nbun test\n\n# Build\nbun run build\n\n# Type checking\nbun run typecheck\n\n# Format code\nbun run format\n```\n\n## License\n\nMIT\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n## Credits\n\nBuilt by the A24Z Team as part of the markdown tooling ecosystem.","readmeFilename":"README.md","homepage":"https://github.com/a24z-ai/markdown-search#readme","bugs":{"url":"https://github.com/a24z-ai/markdown-search/issues"}}