{"plugin":{"id":4,"name":"html-search-engine","icon":"📡","description":"Generates a search index from your HTML build outputs at build time and provides a robust client-side API for fuzzy searching","longDescription":"### Plugin Overview\nThis plugin generates a search index from your HTML build outputs at build time and provides a robust client-side API for fuzzy searching, scoring, and highlighting.\n\n#### Key Features\n* 🏗️ **Build-Time Indexing**: Automatically parses generated HTML files to create lightweight JSON search indexes.\n* 🔍 **Fuzzy Search**: Client-side fuzzy matching (Levenshtein distance) to handle typos.\n* 🎯 **Smart Scoring**: Prioritizes matches in titles over content.\n* ✂️ **Auto-Excerpts**: Generates contextual snippets around search terms.\n* ⚡ **Progressive Loading**: Batches index fetching to keep the UI responsive.\n* 🚀 **Zero Config (mostly)**: Just tell it which CSS classes to index.\n\n#### Benefits\nThe plugin offers a range of benefits, including:\n+ Fast and accurate search results\n+ Robust handling of typos and misspellings\n+ Intelligent scoring and ranking of search results\n+ Automatic generation of contextual snippets\n+ Responsive UI with progressive loading\n+ Easy configuration with minimal setup required\n\n### Notes\n- make sure to have a way to serve your static build files","version":"0.1.0","compatibleVersions":"^2.0.4","author":"Justin Halle","ownerId":"c166cdde-5f5c-40e5-a3ff-236652fa88a9","category":"utilities","tags":["html","search engine"],"published":true,"npmPackage":"frame-master-plugin-html-search-engine","githubUrl":"https://github.com/shpaw415/frame-master-plugin-html-search-engine","docsUrl":null,"installation":"bun add frame-master-plugin-html-search-engine","quickStart":"/* HTML in your build */\n<section class=\"doc\">\n  <h2 class=\"doc-title\">Lorem Ipsum</h2>\n  <p class=\"doc-content\">Lorem ipsum dolores</p>\n</section>\n\n/* script */\nimport { search } from \"frame-master-plugin-html-search-engine/client\";\n\n// Perform a search\nconst results = await search(\"plugin system\", {\n  limit: 5,\n  fuzzy: true,\n});\n\nresults.forEach((result) => {\n  console.log(`Found in: ${result.index.title}`);\n  console.log(`Score: ${result.score}`);\n  console.log(`Excerpt: ${result.excerpt}`);\n  console.log(`Link: ${result.index.pathname}`);\n});","configuration":"import searchEngine from \"frame-master-plugin-html-search-engine\";\n\nexport default {\n  plugins: [\n    searchEngine({\n      // The CSS classes to extract text from\n      classNameToParse: [\"doc-title\", \"doc-content\"],\n    }),\n  ],\n};","upvote":0,"downvote":0,"createdAt":"2025-11-29T04:20:11.000Z","updatedAt":"2025-11-29T04:20:11.000Z","dependencies":[]}}