flexsearch
minisearch
Our great sponsors
flexsearch | minisearch | |
---|---|---|
12 | 10 | |
11,765 | 4,055 | |
3.6% | - | |
7.1 | 7.9 | |
3 months ago | 9 days ago | |
JavaScript | JavaScript | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
flexsearch
-
Nextra 2 – Next.js Static Site Generator
Full-text search is powered by FlexSearch and Nextra will index all of your pages at build time ⚡.
-
How to link search results back to original HTML when clicked?
I have a web page that reads in various .md files and displays them as HTML. The app uses the marked library to convert the markdown into HTML for display. I create a flexsearch search index out of the raw text values from the documents (raw text is gathered using DOMParser over all HTML elements) so that user can search for keywords in the docs and get back a table of results. The order of operations and search index code looks like:
-
How can I set up this Typescript project to use a Javascript library?
I am trying to get flexsearch (a lib written in js) up and running in a TS project and found a working example here. I downloaded the project and ran 'yarn add flexsearch' and also 'yarn add @/types/flexsearch' since I know that you need a special index.d.ts file to convert the JS to TS properly.... however the code errors out during the Index object creation with the message.
-
Best way to implement a search feature over raw HTML using Typescript/React?
Try using a proper browser search like Lunr or Flexsearch
-
Lyra: Fast, in-memory, typo-tolerant, full-text search engine in TypeScript
Current version of FlexSearch (0.7.2) is not typo tolerant, see https://github.com/nextapps-de/flexsearch/issues/118
-
Writing a Fuzzy Search Component With Preact and Fuse for Astro
Very nice! Seems to perform very well. I'm curious, have you compared Fuse with other search engines? Like flex search or elasticlunr? Why did you choose fuse ?
-
Comparing English and Spanish Words in JavaScript
I actually looked into this term before localeCompare(): Full Text Search. It's pretty heavy duty. In JavaScript, this can come in the form of a library dependency like FlexSearch. Far too bulky for the humble sorting task I have at hand.
- Quick live-search on 1M strings in React native
-
In memory full text search in Rust?
Javascript seems to have a comprehensive in memory solution https://github.com/nextapps-de/flexsearch
-
DynamoDB full text search
Another option that was often suggested to me was building the search index with a library such as https://github.com/nextapps-de/flexsearch and distribute the index than to the client and handle it one the client. But yeah sounds like a lot of overhead and I haven't tried it.
minisearch
-
Character and Subsector generators for Classic Traveller, with TAS Forms!
I wrote an online catalog a while back (and I need to get back on adding graphics and products at some point). It’s written using Eleventy and the minisearch library. The source and data are available on Github if you want to see how I did things. I’m not a professional web designer either, but it was a fun project.
- What is your go to client-side fuzzy searching library?
-
Meilisearch v1.0 – the open-source Rust alternative to Algolia and Elasticsearch
You could have a look at https://github.com/lucaong/minisearch/
-
What do you use for site search? Custom built solution? Meilisearch? Algolia?
If you're dealing with thousands of records or less, searching titles and summaries rather than long bodies of text, I recommend looking into client-side solutions. Nothing beats the responsiveness of search-as-you-type entirely on the client side. It can be fairly sophisticated fulltext search. For example, I've built had great success with MiniSearch.
- MiniSearch – fuzzy match search in TypeScript
- Minisearch: Tiny, powerful JavaScript full-text search engine for browser, Node
-
Lyra: Fast, in-memory, typo-tolerant, full-text search engine in TypeScript
I quite enjoy minisearch[1] which is also 0 dependencies, actively maintained, and I expect would work well in a worker environment. I dropped it into a service worker and plugged it with a simple point in polygon script to enable geosearch for a recent project[2] and it played v. nicely.
-
I highly recommend the Omnisearch plugin.
No magic here, the underlying engine is Minisearch, which uses the BM25 algorithm (the de facto standard among search libraries). Omnisearch adds a magic sauce during indexing by converting notes into custom objects, with the following fields: - body (the plain markdown text) - filename & yaml aliases - level 1 headers - level 2 headers - level 3 headers
-
For lovers of instant search and Ctrl+K menus, we made an open-source tool to add that to your website in 2 steps: 1. Enter your URL 2. Add code snippet to <head>. Links and code in comments!
It's actually really simple! Minisearch did most of the heavy lifting so all we needed to do was the crawling, storing and UI etc. I'd check that out if you're interested in the search part!
-
I made a tool to add instant search to your site in 2 steps: 1. Enter your URL 2. Add code snippet to <head>. Links in comments!
We use MiniSearch for searching, while fast-fuzzy is used for highlighting of detected search terms.
What are some alternatives?
Fuse - Lightweight fuzzy-search, in JavaScript
lunr.js - A bit like Solr, but much smaller and not as bright
elasticsearch-js - Official Elasticsearch client library for Node.js
orama - 🌌 Fast, dependency-free, full-text and vector search engine with typo tolerance, filters, facets, stemming, and more. Works with any JavaScript runtime, browser, server, service!
itemsjs - Extremely fast faceted search engine in JavaScript - lightweight, flexible, and simple to use
TNTSearch - A fully featured full text search engine written in PHP
obsidian-omnisearch - A search engine that "just works" for Obsidian. Supports OCR and PDF indexing.
regex-benchmark - It's just a simple regex benchmark of different programming languages.
fzf-for-js - Do fuzzy matching using FZF algorithm in JavaScript
Lyra - A simple to use, composable, command line parser for C++ 11 and beyond