Fuzzy Search Engine Plugin for Bubble – Test it Free!

Hi everyone :waving_hand:

I recently released a native Fuzzy Search Engine plugin for Bubble (no AI embeddings, no vector databases), and I’m looking for people who’d like to test it out and share feedback.

What makes this plugin different from typical Bubble search setups:

· :magnifying_glass_tilted_left: Advanced relevance ranking for smarter results (not just “contains”)

· :bullseye: Match threshold control to decide how strict or relaxed the matching should be

· :1234: Result count control to limit how many matched records are returned

· :scissors: Stemming (e.g. dressdresses)

· :speaker_high_volume: Phonetic matching for sound-alike words

· :brain: Safe fuzzy matching that handles typos without over-matching

· :keyboard: Autocomplete-style boosting for partial searches

· :link: Synonym support (manual + automatic patterns)

· :test_tube: Optional tuning features you can enable or disable based on your use case

· :rocket: Fully native server-side plugin — fast, private, and no external services

If you’d like to try it out for free, just DM me your App ID and I’ll enable the plugin for a few weeks so you can test it properly in your own app.

I’d be very grateful for any constructive feedback, edge cases you find, or feature requests you think would make the search even better for real-world Bubble apps.

:link: Demo: https://plugin-demo-38013.bubbleapps.io/smart_semantic_search_engine
:link: Plugin page: https://bubble.io/plugin/fuzzy-search-engine-%E2%80%93-autocomplete-1762495173505x851422675193823200

Thanks in advance, and really appreciate the support from the Bubble community :folded_hands:

Can you define how you define fuzz in this plugin?

For example “dress” doesn’t find this record?

Hi @code-escapee

Fuzzy matching in this plugin is designed to handle minor spelling differences and typos only. It does not try to guess meaning or product categories. This is intentional, so the search doesn’t return unrelated results or over-match common words.

In your example, the record “Seamed Long Sleeve Airy Denim Shirtdress” doesn’t match the query “dress” via fuzzy matching because shirtdress is a different word, not a spelling variation of dress.

This is exactly where Synonyms should be used. In the demo app, you’ll see an “Add Synonym” button where you can add entries such as ‘dress; shirtdress’.

I added this for testing, and once the synonym is in place, searching for “dress” correctly matches “Seamed Long Sleeve Airy Denim Shirtdress.”

This approach keeps fuzzy matching safe and precise (avoiding over-matching) while allowing you to control meaning through synonyms.

Thanks for testing the plugin and for pointing out this specific scenario — feedback like this really helps improve it. :folded_hands:

1 Like

You need to be more transparent about what library/algorithm you’re using given that we can’t inspect the code.

Hi @randomanon ,

The plugin does not use AI embeddings, vector databases, or external search services. It’s a fully native Bubble server-side plugin built on well-known, classical information-retrieval techniques, including:

  • Tokenization & normalization

  • Controlled fuzzy matching (edit-distance based, with safeguards to prevent over-matching)

  • Stemming for basic word form normalization

  • Optional phonetic matching

  • Synonym expansion (user-defined)

  • Advanced relevance ranking - Results are ordered using statistical signals that prioritize meaningful matches over simple keyword frequency.

  • Threshold-based filtering to control match strictness

All matching and scoring happens at runtime on the data you pass into the server-side action — nothing is sent to third-party services or stored externally.

I’m also actively refining edge cases based on real usage feedback. If you’d like to test it yourself, feel free to DM me your App ID and I can enable the plugin for a few weeks so you can evaluate its behavior end-to-end in your own app.

2 Likes

Update: I’ve improved the fuzzy and phonetic matching logic to handle typos and sound-alike words more accurately, while reducing false matches. The changes also improve performance, especially when searching larger datasets. Searches should now feel noticeably more precise and consistent.