We just rolled out a new core integration with the search engine provider Algolia, which is available for the Professional tier and above.
It is currently in Beta - it is already available for all main cluster apps, and dedicated instances will be able to see it in an upcoming version you can upgrade your instance to.
Key highlights:
Super fast searches on indexed types
Partial word matching (only on the beginning of a word)
Customizable search (field priority, typo resilience, case sensitivity) via Algolia interface
Can be used either for Search Boxes or as a generic data source
Data types and fields sent to Algolia are configured from the editor (via Privacy page in the Data tab)
Tips and gotchas:
This feature will use your own Algolia API keys, i.e. you must be an Algolia user. They provide a free tier as well as free 7-day trials for premium tiers on their website.
Initial indexing of existing types can be slow and will use capacity
At the moment (for the Beta), updates to indexed types should be synced to Algolia automatically, but there might be situations where your Algolia index falls out of sync with your Bubble tables (e.g. if certain updates fail for whatever reason). In this event, you can trigger a full re-indexing that should address any problems, should there be any.
At the moment, custom fields (i.e. fields which are other data types) cannot be indexed in Algolia
As youâre exploring Algoliaâs features, youâll notice that you can configure the order of different fields of your index in terms of order of priority / search; there will be situations where you can weight two fields equally, but you should NOT do this because it will break Bubbleâs implementation (i.e. all fields should be kept in a strict linear order of priority)
At the moment, some Algolia features (query size, pagination, typo sensitivityâŚ) are not handled on Bubbleâs side. You can adjust these settings on a per-table basis in Algoliaâs configuration dashboard, but not directly in the Bubble Editor
Enjoy, and be sure to send any bug reports our way!
Hereâs Allenâs eply to this question from the closed beta thread, for those who have the same question @allenyang I canât seem to get Algola results on this page. Is this no longer up to date?
Sure - this is on my personal app (so excuse the poor design!) but this page implements Algolia to power a repeating group and to power a searchbox: https://halfbakedoath.bubbleapps.io/algolia-demo
Hah - was hoping people would forget about my toy app
Yes, it had previously spun down because Algolia prunes accounts that arenât active for a certain number of days I believe. I just created a new account and re-linked the search. (In case you needed even more selling points - it took me < 3 minutes to re-do everything and get it set back up!) If you try that page again, you should see the Algolia results on the right, and youâll see the performance difference when comparing the left vs right halves of the page.
Our dedicated instance upgrade points are automatically generated every day, unless somethingâs pausing them. I believe that means the feature should be available in the latest upgrade point - if not, please let me know!
@aless & @allenyang Iâve been working with this today, and so far itâs pretty awesome! I noticed one thing that needs changing (if Iâm not mistaken)âŚ
It looks like date fields are being passed to Algolia as texts. If we wanted to utilize the sorting configurations with date fields, dates need to be converted to UNIX . For now, Iâm sorting in Bubble after the Algolia search, but it would be really great to have this baked in via the Algolia sorting configs.
I know this is still very much in beta, but so far, this is very cool
FYI: I have submitted a bug report after I posted all this
Wait⌠did you guys already update this? Iâm seeing my fields being recognized properly now⌠not just dates, but numbers and locations tooâŚ
Edit
Hm, maybe I spoke too soon. Getting a little confused as to whatâs going on. This is what I originally saw:
Locations show city, state, country. Dates are formatted to a text string and the number field is being read as text. When I go to add a sort-by attribute in Algolia, none of the dates or numbers come up as options.
But, just a few minutes ago, all of those values were showing in different formats⌠dates were in UNIX, locations were showing full coordinates, and I could see my dates and number fields available in the sorting options.
Then, I triggered a re-index and it went back to all text Any ideas?
Edit Again
Ok, Iâm narrowing it down. I had added a new number field to sync with Algolia. Thatâs when I saw the correct formatting (below). The number field was for a workaround for the dates (to pass the UNIX timestamp myself), but once I saw the formats were good, I deleted the field. Thatâs when it went back to text formats. Then, I restored the number field, and here we are again with correct formatting. I hope this helps troubleshootâŚ
How is it that your search results display instantly even though bubble always has this time delay between entering a value (in a search field) and recognizing it as a value to trigger something (like a search)?
(In my case the results are displayed immediately only when I hit tab or return.)
Or are you using the Instant Text plugin?
I was not using any plugin in my demo page. The Algolia search results are not quite instantaneous, though they load faster than native Bubble results. Thereâs still the time needed for Bubble to recognize that thereâs a new value to search for, as you describe. Itâs just that the Algolia results are âfaster enoughâ to be noticeable.
Why can algolia search not search multiple fields (like the constraints in bubbleâs âdo a search forâ)?
I tried âalgolia search forâ - âinterstect withâ - âalgolia search forâ but it doesnât work for me. Any ideas on how to perform a more specific algolia search without relying on âfilteredâ? (E.g. search for all things with the category x and online = yes?)
Also, I see that itâs only available for public data. My users canât search through private data they store in my app. I would love to see the next release of this product include data with privacy rules.