The schema is the work, not the search
Technology
Typesense enforces a typed schema. Every field is declared before anything is indexed, and changing that declaration means reindexing. Algolia lets you push documents of whatever shape and sort it out later. The effort moves accordingly: less of it in querying, more in deciding what a document is.
We run it on the Harvard CLBB NeuroLaw Library, where articles, amicus briefs, court cases, and affidavits carry different metadata and have to answer one search box. We have also migrated sites onto it from Algolia, and we wrote down how long that took.
Practice
What we learned building on it, and moving to it
- One index for four kinds of document
The NeuroLaw Library holds journal articles, amicus briefs, court cases, and expert affidavits, each with its own metadata. They all resolve to one Typesense collection, because readers arrive with a question rather than a document type. One search box and one filter set cover the whole library.
- The schema is decided before you index
Typesense requires every field declared up front, and changing that declaration means reindexing. So the mapping work happens first, not after launch. Getting four document types into a single model that still exposes what a lawyer filters on, court, circuit, jurisdiction, year, was the hard part of the build.
- Migration takes weeks, and sometimes is wrong
We moved a complex Algolia implementation across in four to five weeks, and a simpler site in about two. Budget for what has no equivalent: hierarchical facets are yours to build in application code. If a fully managed, plug and play index is what you want, stay on one.


