MarginaliaSearch/code
2023-04-15 18:39:16 +02:00
..
api Better handling of quote terms, fix bug in handling of longer queries. 2023-04-10 13:11:40 +02:00
common Issue 5: Fix bug where some IPv6 addresses blew up domain loading. 2023-04-15 14:11:08 +02:00
features-convert Clean up artifact extractor. 2023-04-10 13:07:54 +02:00
features-crawl Yet more restructuring. Improved search result ranking. 2023-03-16 21:35:54 +01:00
features-index Clean up of the index query handling related code. 2023-04-10 14:50:57 +02:00
features-search Bug fix for document metadata encoding that breaks year based queries. 2023-04-14 16:56:49 +02:00
libraries Increase search result relevance (#8) 2023-04-07 20:18:08 +02:00
process-models Bugfix crawl plan, doesn't use rewrite() everywhere 2023-03-30 15:41:07 +02:00
processes Issue 5: Fix bug where some IPv6 addresses blew up domain loading. 2023-04-15 14:11:08 +02:00
services-core Fix bug in index service where tld: and links:-queries wouldn't work. 2023-04-15 18:39:16 +02:00
services-satellite Update readme.md 2023-04-11 16:31:11 +02:00
tools Refactor website screenshot tool and website adjacencies calculator into code/tools. 2023-04-11 16:20:27 +02:00
readme.md Fix broken diagram links after doc/ restructuring. 2023-03-25 16:32:10 +01:00

Code

This is a pretty large and diverse project with many moving parts.

You'll find a short description in each module of what it does and how it relates to other modules. The modules each have names like "library" or "process" or "feature". These have specific meanings. See doc/module-taxonomy.md.

Overview

A map of the most important components and how they relate can be found below.

image

Services

Processes

Processes are batch jobs that deal with data retrieval, processing and loading.

Tools

Features

Features are relatively stand-alone components that serve some part of the domain. They aren't domain-independent, but isolated.

Libraries and primitives

Libraries are stand-alone code that is independent of the domain logic.

  • common elements for creating a service, a client etc.
  • libraries containing non-search specific code.
    • array - large memory mapped area library
    • btree - static btree library