-
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!
-
SurveyJS
Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
🚧 N.b. The project is in beta version at this moment, so breaking changes or some bugs are opportunities to contribute to the project if you want 😎 Here you can find the GitHub Repo 🚧
If you want to read this article with the full code of the application, you can find it here.
First of all, to use Orama you have to create a database. To do that, Orama exposes a method called create. This method accepts a schema that describes the database structure and some options to configure the database. For this example, in addition to the schema, I want to show you how you can work with a different language (Italian, in this case) and how you can configure Orama to do that. Orama, to handle this process, uses stemmer out-of-the-box. So to create a simple database in this case and to move your first steps with Orama, you can go to the folder src/core/useOrama where you'll find all the code to handle Orama in your application. Let's start from the src/core/useOrama/context.ts file
As you can notice, integrating Orama into your application is pretty simple. The project has born some months ago and obviously it is not perfect and with huge features, but it works well, and the team will release many new features in the further future. All the hooks and the context seen in this article could be early replaced by an npm package called use-orama; it is a working progress 🚧.