ee1572fab0
* add config options to replace parts of urls and change their weight * improve config-default.toml comments * refactor checking/replacing a bit
73 lines
2.5 KiB
Plaintext
73 lines
2.5 KiB
Plaintext
==========
|
|
metasearch
|
|
==========
|
|
|
|
https://github.com/mat-1/metasearch2
|
|
|
|
----
|
|
INFO
|
|
----
|
|
|
|
metasearch (aka metasearch2) is a cute metasearch engine. It sources its results
|
|
from Google, Bing, Brave, and several others. It's designed to be as lightweight
|
|
as possible, both on the server and client. There is no required client-side
|
|
JavaScript.
|
|
|
|
There's a public demo instance at https://s.matdoes.dev, but please do not use
|
|
it as your default or rely on it. This is so I don't get ratelimited by Google
|
|
or other engines. Run your own instance instead!
|
|
|
|
------------
|
|
INSTALLATION
|
|
------------
|
|
|
|
The easiest way to install metasearch is with `cargo install metasearch`. To get
|
|
the unstable version with the latest features, you can install it with
|
|
`cargo install --git https://github.com/mat-1/metasearch2`.
|
|
|
|
Usage: `metasearch [config_file]`
|
|
|
|
The config_file argument is optional; if it's not specified then it'll be
|
|
checked at the following locations:
|
|
|
|
- $XDG_CONFIG_HOME/metasearch/config.toml
|
|
- $HOME/.config/metasearch/config.toml
|
|
- ./config.toml
|
|
|
|
If no config file exists, it'll be created at the first valid path in the list.
|
|
|
|
By default, metasearch runs on port 28019. You are encouraged to use a reverse
|
|
proxy.
|
|
|
|
-------------
|
|
CONFIGURATION
|
|
-------------
|
|
|
|
You can see all the default config options at `src/config.rs`. Some interesting
|
|
options you may want to change are:
|
|
|
|
- bind - the host and port that the web server runs on, defaults to
|
|
`0.0.0.0:28019`.
|
|
- api - whether your instance is accessible through a JSON API. See below for
|
|
more details.
|
|
- ui.stylesheet_url - a link to a stylesheet that will be loaded alongside the
|
|
main one, for example `/themes/catppuccin-mocha.css`.
|
|
- image_search.enabled - add a tab for viewing image results for your query.
|
|
this is disabled by default as the image proxy could be used to make GET
|
|
requests to arbitrary URLs from your server.
|
|
- engines.google.weight - the ranking score multiplier for an engine, you can
|
|
modify this if you prefer the results from certain engines.
|
|
|
|
--------
|
|
JSON API
|
|
--------
|
|
|
|
metasearch has a JSON API that can be enabled by setting `api = true` in your
|
|
config. To use it, set the `Accept: application/json` header in your requests.
|
|
|
|
For example:
|
|
curl 'http://localhost:28019/search?q=sandcats' -H 'Accept: application/json'
|
|
|
|
The structure of the API is not guaranteed to be stable, as it relies on
|
|
serializing internal structs. It may change without warning in the future.
|