summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorMarkus Heiser <markus.heiser@darmarit.de>2024-08-19 17:47:54 +0200
committerMarkus Heiser <markus.heiser@darmarIT.de>2024-10-05 08:18:28 +0200
commit7ab577a1fba43578b77f56b76275d0e65d03b318 (patch)
tree0179516d6d89aab77b542494b4e90b22d22cc9cf /docs
parentc49a2707c1ba7122c250ba963a83d095441f4d59 (diff)
downloadsearxng-7ab577a1fba43578b77f56b76275d0e65d03b318.tar.gz
searxng-7ab577a1fba43578b77f56b76275d0e65d03b318.zip
[mod] Revision of the favicon solution
All favicons implementations have been documented and moved to the Python package: searx.favicons There is a configuration (based on Pydantic) for the favicons and all its components: searx.favicons.config A solution for caching favicons has been implemented: searx.favicon.cache If the favicon is already in the cache, the returned URL is a data URL [1] (something like `data:image/png;base64,...`). By generating a data url from the FaviconCache, additional HTTP roundtripps via the favicon_proxy are saved: favicons.proxy.favicon_url The favicon proxy service now sets a HTTP header "Cache-Control: max-age=...": favicons.proxy.favicon_proxy The resolvers now also provide the mime type (data, mime): searx.favicon.resolvers [1] https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URLs Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
Diffstat (limited to 'docs')
-rw-r--r--docs/admin/settings/settings_search.rst3
-rw-r--r--docs/conf.py1
-rw-r--r--docs/src/searx.favicons.rst48
3 files changed, 51 insertions, 1 deletions
diff --git a/docs/admin/settings/settings_search.rst b/docs/admin/settings/settings_search.rst
index eb63ab684..860a94af9 100644
--- a/docs/admin/settings/settings_search.rst
+++ b/docs/admin/settings/settings_search.rst
@@ -43,7 +43,8 @@
- ``wikipedia``
``favicon_resolver``:
- Favicon resolver, leave blank to turn off the feature by default.
+ :ref:`Favicon resolver <favicons>`, leave blank to turn off the feature by
+ default.
- ``allesedv``
- ``duckduckgo``
diff --git a/docs/conf.py b/docs/conf.py
index fec9eb64b..27881a4e0 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -127,6 +127,7 @@ extensions = [
"sphinx_tabs.tabs", # https://github.com/djungelorm/sphinx-tabs
'myst_parser', # https://www.sphinx-doc.org/en/master/usage/markdown.html
'notfound.extension', # https://github.com/readthedocs/sphinx-notfound-page
+ 'sphinxcontrib.autodoc_pydantic', # https://github.com/mansenfranzen/autodoc_pydantic
]
autodoc_default_options = {
diff --git a/docs/src/searx.favicons.rst b/docs/src/searx.favicons.rst
new file mode 100644
index 000000000..6b98d5b8e
--- /dev/null
+++ b/docs/src/searx.favicons.rst
@@ -0,0 +1,48 @@
+.. _favicons:
+
+========
+Favicons
+========
+
+.. contents::
+ :depth: 2
+ :local:
+ :backlinks: entry
+
+.. automodule:: searx.favicons
+ :members:
+
+.. _favicons.config:
+
+Favicons Config
+===============
+
+.. automodule:: searx.favicons.config
+ :members:
+
+.. _favicons.proxy:
+
+Favicons Proxy
+==============
+
+.. automodule:: searx.favicons.proxy
+ :members:
+
+.. _favicons.resolver:
+
+Favicons Resolver
+=================
+
+.. automodule:: searx.favicons.resolvers
+ :members:
+
+.. _favicons.cache:
+
+Favicons Cache
+==============
+
+.. automodule:: searx.favicons.cache
+ :members:
+
+
+