Online /info
Render SearXNG instance documentation.
Usage in a Flask app route:
from searx import infopage
from searx.extended_types import sxng_request
_INFO_PAGES = infopage.InfoPageSet(infopage.MistletoePage)
@app.route('/info/<pagename>', methods=['GET'])
def info(pagename):
    locale = sxng_request.preferences.get_value('locale')
    page = _INFO_PAGES.get_page(pagename, locale)
- 
class searx.infopage.InfoPage(fname: str)[source]
- A page of the - online documentation.
 - 
- 
property raw_content[source]
- Raw content of the page (without any jinja rendering) 
 - 
- 
property content[source]
- Content of the page (rendered in a Jinja context) 
 - 
- 
property title[source]
- Title of the content (without any markup) 
 - 
- 
property html: str[source]
- Render Markdown (CommonMark) to HTML by using markdown-it-py. 
 - 
- 
get_ctx() → dict[str, str][source]
- Jinja context to render - InfoPage.content
 
 
- 
class searx.infopage.InfoPageSet(page_class: type[InfoPage] | None = None, info_folder: str | None = None)[source]
- Cached rendering of the online documentation a SearXNG instance has. - 
- Parameters:
- 
 - 
- 
folder: str
- location of the Markdown files 
 - 
- 
locale_default: str
- default language 
 - 
- 
locales: list[str]
- list of supported languages (aka locales) 
 - 
- 
toc: list[str]
- list of articles in the online documentation 
 - 
- 
get_page(pagename: str, locale: str | None = None)[source]
- Return - pagenameinstance of- InfoPage
 - 
- Parameters:
- 
- pagename (str) – name of the page, a value from - InfoPageSet.toc
 
- locale (str) – language of the page, e.g. - en,- zh_Hans_CN(default:- InfoPageSet.i18n_origin)
 
 
 
 - 
- 
iter_pages(locale: str | None = None, fallback_to_default: bool = False)[source]
- Iterate over all pages of the TOC