To store data where the user have been it is not so complicated. However, the part of making querys – I do prefer old SQL .
So the choice will be a database that runs into the browser- and Sqlite seems the choice – see https://sqlite.org/wasm/doc/trunk/index.md
Now the only thing is to find a provide to send Sql , and , if possible, to work with EF Core.
I have found 2 providers of this feature:
https://github.com/b-straub/SqliteWasmBlazor
https://github.com/bitfoundation/bitplatform/tree/develop/src/Besql
Both works with EFCore and both seems ok . So the logical decision is to let the final user flip between those .
Demo at https://ignatandrei.github.io/BlazorBrowserHistory/
Nuget Packages at https://www.nuget.org/packages?q=BBH+owner%3Aignatandrei&includeComputedFrameworks=true&prerel=false&sortby=relevance