2023-03-04 13:00:46 +00:00
# Search Service
This service handles search traffic and is the service
you're most directly interacting with when visiting
[search.marginalia.nu ](https://search.marginalia.nu ).
2023-03-22 15:59:38 +00:00
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.
2023-03-22 16:02:03 +00:00
2023-03-25 15:32:10 +00:00

2023-03-22 16:02:03 +00:00
2023-03-04 13:00:46 +00:00
## Central classes
2023-03-17 15:21:52 +00:00
* [SearchService ](src/main/java/nu/marginalia/search/SearchService.java ) receives requests and delegates to the
2023-03-04 13:00:46 +00:00
appropriate services.
2023-03-04 13:05:24 +00:00
* [CommandEvaluator ](src/main/java/nu/marginalia/search/command/CommandEvaluator.java ) interprets a user query and acts
2023-03-04 13:00:46 +00:00
upon it, dealing with special operations like `browse:` or `site:` .
2023-03-04 13:05:24 +00:00
* [SearchQueryIndexService ](src/main/java/nu/marginalia/search/svc/SearchQueryIndexService.java ) passes a parsed search query to the index service, and
2023-03-04 13:00:46 +00:00
then decorates the search results so that they can be rendered.
2023-03-13 16:39:53 +00:00
## See Also
2023-03-22 15:59:38 +00:00
* [features-search ](../../features-search/ )