MarginaliaSearch/code/services-application/search-service
Viktor Lofgren 320882c34a (site-info) Try to discover the schema of the website with a site:-query
The site info view can't blindly assume that every website supports https.  To figure out which schema to use when linking to a site, execute a single-result search for site:domain.name and then grab the schema off the result.

To allow this, a count parameter is introduced to doSiteSearch() in SearchOperator.
2023-12-16 16:34:53 +01:00
..
src (site-info) Try to discover the schema of the website with a site:-query 2023-12-16 16:34:53 +01:00
build.gradle (search) Optimize related domains queries 2023-12-05 20:12:03 +01:00
readme.md (refactor) Remove features-search and update documentation 2023-10-09 15:12:30 +02:00

Search Service

This service handles search traffic and is the service you're most directly interacting with when visiting search.marginalia.nu.

It interprets a "human" query and translates it into a request that gets passed into to the index service, which finds related documents, which this service then ranks and returns to the user.

image

Central classes

  • SearchService receives requests and delegates to the appropriate services.

  • CommandEvaluator interprets a user query and acts upon it, dealing with special operations like browse: or site:.

  • SearchQueryIndexService passes a parsed search query to the index service, and then decorates the search results so that they can be rendered.

See Also