add brave as a search engine

This commit is contained in:
HadiCherkaoui 2025-02-28 13:11:00 +01:00
parent 99351fc2a6
commit ca86a7e358
7 changed files with 284 additions and 17 deletions

View file

@ -1,6 +1,7 @@
import express from 'express';
import { searchSearxng } from '../lib/searchEngines/searxng';
import { searchGooglePSE } from '../lib/searchEngines/google_pse';
import { searchBraveAPI } from '../lib/searchEngines/brave';
import { getSearchEngineBackend } from '../config';
import logger from '../utils/logger';
@ -42,6 +43,20 @@ async function performSearch(query: string, site: string) {
return searxResult.results;
}
case 'brave': {
const braveResult = await searchBraveAPI(query);
return braveResult.results.map(item => ({
title: item.title,
url: item.url,
content: item.content,
thumbnail: item.img_src,
img_src: item.img_src,
iframe_src: null,
author: item.meta?.fetched || site,
publishedDate: item.meta?.lastCrawled
}));
}
default:
throw new Error(`Unknown search engine ${searchEngine}`);
}