I put together a search-engine comparison with Lunr, FlexSearch, MiniSearch, and others to determine which yields the best search results with the best performance. MiniSearch currently ranks highest, largely because of being maintained and using modern standards. For searching I’d advise separating an index from full contents. Even with full contents and 57 pages, it can come out at 187 KB unminified.
The Static Generator plugin is capable of creating both effectively for Grav, and the Scholar theme currently uses a FlexSearch-implementation. You could offset the load for the content to be searched, but it’s comparatively low in the context of a full website. Searching just the index - metadata - is acceptable in my view, and rendering is fairly easy with JS.
Performance and feasibility are as good, if not better, than more involved solutions in PHP or other services. You’re performing fewer external queries, require less processing, and can handle debouncing and throttling more effectively. If you wanted to keep it “live”, you could attach it to any Fetch-response from any API, but at that point it’d be sane to cache results and data.