Extension:SearchVue

From mediawiki.org
MediaWiki extensions manual
OOjs UI icon advanced.svg
SearchVue
Release status: beta
SDAW Search improv 06b metadata in quick view.png
Implementation Special page , Search
Description Vue.js augmentations and improvements to Special:Search
Author(s) Structured Data team
Latest version Continuous updates
Compatibility policy Snapshots releases along with MediaWiki. Master is not backward compatible.
MediaWiki master
License GNU General Public License 2.0 or later
Download
  • $wgQuickViewMediaRepositoryUri
  • $wgQuickViewSearchFilterForQID
  • $wgQuickViewMediaRepositorySearchUri
  • $wgQuickViewMediaRepositoryApiBaseUri
Quarterly downloads 7 (Ranked 161st)
Translate the SearchVue extension if it is available at translatewiki.net
Issues Open tasks · Report a bug

SearchVue provides improvements to the Special:Search page including a new "quickview" panel. For the "TypeaheadSearch" bar at the top of each page, see either Codex or Skin:Vector.

Requirements[edit]

MediaWiki 1.36.0 or greater.

While not strictly required, we strongly suggest installing these dependencies to enhance the media search experience.

System-level dependencies[edit]

  • ElasticSearch (see here for more information on how to install)

MW Extensions[edit]

The following Mediawiki extensions are recommended:

We strongly recommend also installing these extensions to allow more metadata to be used to enhance search results:

If you have a Wikibase repository and a local image store, we strongly recommend also installing these extensions to allow more data to be used to enhance multimedia search results:

Installation[edit]

After the extensions listed above are set up properly, enable the extension by adding wfLoadExtension( 'SearchVue' ); along with the required config variables to LocalSettings.php.

You might need to run composer install in the extension directory, or in the root directory of your MediaWiki installation if you are using a setup that merges all extension's dependencies into MediaWiki's vendor directory.

Configuration[edit]

Extension configuration variables are sets of key-value pairs. They are documented in more detail in extension.json. Config variables should be added to LocalSettings.php.

Coding conventions[edit]

JavaScript/Vue[edit]

As much as possible, we default to the Vue Style Guide.

For now, we are not using full single-file components because we need to be able to compile Less separately so it can be included immediately before the app loads to style the PHP UI.

CSS/Less[edit]

Since Wikimedia UI base variables aren't in core, we require them as a package dependency, then use a shell script to copy them to the lib directory. To update the base variables, require the new version in package.json and install it, then run npm run build-lib to copy the updated file into lib. Commit the updated files.

We're including the base variables in our custom variables file, resources/mediasearch-variables.less. To use them in other files, include mediasearch-variables.less rather than directly including the base file itself.

The CSS class name prefix sdvs should be used for extension-level components.

See also[edit]