Orama Community Update - May '23

Orama Community Update - May '23

Orama Community Update - May '23

Angela Angelini

Community Updates

3

min read

May 1, 2023

Welcome to the monthly blog series where we bring you up to speed on recent happenings in the Orama community and celebrate noteworthy milestones.

Wait, what’s Orama?

Orama is an immutable, runtime-agnostic, edge-ready, and in-memory full-text search engine that works both on client and server.

Through the implementation of an optimized prefix tree and some clever tweaks, Orama can perform searches through millions of entries in microseconds.

You can get started with just a few lines of code:

import { create, insert, search } from '@orama/orama'

const db = await create({
  schema: {
    title: 'string',
    rating: 'number',
    isFavorite: 'boolean'
  }
})

await insert(db, {
  title: 'The Lord of the Rings',
  rating: 9.3,
  isFavorite: true
})

await insert(db, {
  title: 'The Hobbit',
  rating: 8.1,
  isFavorite: true
})

const results = await search(db, {
  term: 'lord of the rings',
  where: {
    isFavorite: true
  }
})

We have lots of exciting plans for the Orama open-source project, as well as, our solution for handling large indexes.

If you’d like more details about our roadmap and upcoming product announcements, contact us to schedule a quick Zoom to learn more.

Community Rewards

Is your organization using Orama to solve interesting search problems? Share your success story at info@oramasearch.com and claim a box of community rewards as a thank you!

New Releases

Orama 1.0.0-beta.13 was released last week, which made for six releases in the month of April. Here’s a summary of the new features, bug fixes and enhancements for the month:

New features

  • Allow empty search (#357)
    You don’t longer have to specify a search term to perform a search. This is useful when you want to retrieve all the documents in the database.

  • Preflight API (#355)
    Preflight search allows you to run a preliminary search query that will return just the number of results that match your query. This is useful for determining if a search query will return a large number of results, which can be useful for determining if you should run a full search query and facets (if needed).

  • Threshold API (#352)
    The threshold property is used to set the minimum/maximum number of fuzzy matches to return.

  • Stemming disabled by default (#349)
    While conducting research and gathering feedback, we found out that the majority of the Orama users don’t use stemming. There are also a lot of people that are still using CommonJS, which causes some problems with dynamic module imports. Therefore, we decided to disable stemming, which is still available as an opt-in feature.

  • String filters (#350)
    You can now filter search results by strings! This is useful when you want to filter results by a specific field, such as category or status. Read more here.

  • New Nextra plugin (#344)
    As we migrated our documentation from Docusaurus to Nextra, we created a plugin to perform search through any Nextra website. Try it out!

  • Componentize scores calculation (#338)
    You can customize how to calculate a given result’s ranking score via the built-in hooks and components systems.

Notable Fixes

  • Fixed threshold length calculation (#356)

  • Fixed installation instructions (#347)

  • Fixed Astro plugin docs (#343)

  • Fixed batchSize usage docs (#346)

  • Fixed Node v14 incompatibility (#342)

Check out the Orama releases page on GitHub to learn more.

Community Contributions

A few quick shoutouts to the following community members who contributed to this month’s releases:

Orama Community Stats

We are just getting started, but the Orama community is growing fast!

New Blogs, Videos and Events

Blog posts

Upcoming Events

What’s Next?

See you next month!

Run unlimited full-text, vector, and hybrid search queries at the edge, for free!

© OramaSearch Inc. All rights reserved.

© OramaSearch Inc. All rights reserved.

© OramaSearch Inc. All rights reserved.

© OramaSearch Inc. All rights reserved.