= Plugins

The Gerrit server functionality can be extended by installing plugins.

[[installation]]
== Plugin Installation
Plugin installation is as easy as dropping the plugin jar into the
`$site_path/plugins/` folder. It may take
link:config-gerrit.html#plugins.checkFrequency[a few minutes] until
the server picks up new and updated plugins.

Plugins can also be installed via
link:rest-api-plugins.html#install-plugin[REST] and
link:cmd-plugin-install.html[SSH].

[[development]]
== Plugin Development

How to develop plugins is described in the link:dev-plugins.html[
Plugin Development Guide].

If you want to share your plugin under the link:licenses.html#Apache2_0[
Apache License 2.0] you can host your plugin development on the
link:https://gerrit-review.googlesource.com[gerrit-review] Gerrit
Server. You can request the creation of a new Project by email
to the link:https://groups.google.com/forum/#!forum/repo-discuss[Gerrit
mailing list]. You would be assigned as project owner of the new plugin
project so that you can submit changes on your own. It is the
responsibility of the project owner to maintain the plugin, e.g. to
make sure that it works with new Gerrit versions and to create stable
branches for old releases.

[[core-plugins]]
== Core Plugins

Core plugins are packaged within the Gerrit war file and can easily be
installed during the link:pgm-init.html[Gerrit initialization].

The core plugins are developed and maintained by the Gerrit maintainers
and the Gerrit community.

[[codemirror-editor]]
=== codemirror-editor

CodeMirror plugin for polygerrit.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/codemirror-editor[
Project] |

[[commit-message-length-validator]]
=== commit-message-length-validator

This plugin checks the length of a commit’s commit message subject and
message body, and reports warnings or errors to the git client if the
lengths are exceeded.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/commit-message-length-validator[
Project] |
link:https://gerrit.googlesource.com/plugins/commit-message-length-validator/+doc/master/src/main/resources/Documentation/about.md[
Documentation] |
link:https://gerrit.googlesource.com/plugins/commit-message-length-validator/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[download-commands]]
=== download-commands

This plugin defines commands for downloading changes in different
download schemes (for downloading via different network protocols).

link:https://gerrit-review.googlesource.com/admin/repos/plugins/download-commands[
Project] |
link:https://gerrit.googlesource.com/plugins/download-commands/+doc/master/src/main/resources/Documentation/about.md[
Documentation] |
link:https://gerrit.googlesource.com/plugins/download-commands/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[hooks]]
=== hooks

This plugin runs server-side hooks on events.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/hooks[
Project] |
link:https://gerrit.googlesource.com/plugins/hooks/+doc/master/src/main/resources/Documentation/about.md[
Documentation] |
link:https://gerrit.googlesource.com/plugins/hooks/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[replication]]
=== replication

This plugin can automatically push any changes Gerrit Code Review makes
to its managed Git repositories to another system. Usually this would
be configured to provide mirroring of changes, for warm-standby
backups, or a load-balanced public mirror farm.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/replication[
Project] |
link:https://gerrit.googlesource.com/plugins/replication/+doc/master/src/main/resources/Documentation/about.md[
Documentation] |
link:https://gerrit.googlesource.com/plugins/replication/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[reviewnotes]]
=== reviewnotes

Stores review information for Gerrit changes in the `refs/notes/review`
branch.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/reviewnotes[
Project] |
link:https://gerrit.googlesource.com/plugins/reviewnotes/+doc/master/src/main/resources/Documentation/about.md[
Documentation]

[[singleusergroup]]
=== singleusergroup

This plugin provides a group per user. This is useful to assign access
rights directly to a single user, since in Gerrit access rights can
only be assigned to groups.

[[other-plugins]]
== Other Plugins

Besides core plugins there are many other Gerrit plugins available.
These plugins are developed and maintained by different parties.
The Gerrit Project doesn't guarantee proper functionality of any of
these plugins.

The Gerrit Project doesn't provide binaries for these plugins, but
there is one public service that offers the download of pre-built
plugin jars:

* link:https://gerrit-ci.gerritforge.com[CI Server from GerritForge]

The following list gives an overview of available plugins, but the
list may not be complete. You may discover more plugins on
link:https://gerrit-review.googlesource.com/admin/repos/?filter=plugins%252F[
gerrit-review].

[[admin-console]]
=== admin-console

Plugin to provide administrator-only functionality, intended to
simplify common administrative tasks. Currently providing user-level
information. Also providing access control information by project or
project/account.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/admin-console[
Project] |
link:https://gerrit.googlesource.com/plugins/admin-console/+doc/master/src/main/resources/Documentation/about.md[
Documentation]

[[analytics]]
=== analytics

Plugin to extract commit and review data from Gerrit projects and
expose aggregated metrics over REST and SSH API.
Metrics are extracted in JSON format with one record per line, ready to be
archived and processed with popular BigData transformation tools such
Apache Spark or published and visualized in dashboards.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/analytics[Project] |
link:https://gerrit.googlesource.com/plugins/analytics/+doc/master/README.md[Documentation]

[[avatars-external]]
=== avatars-external

This plugin allows to use an external url to load the avatar images
from.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/avatars-external[
Project] |
link:https://gerrit.googlesource.com/plugins/avatars-external/+doc/master/src/main/resources/Documentation/about.md[
Documentation] |
link:https://gerrit.googlesource.com/plugins/avatars-external/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[avatars-gravatar]]
=== avatars-gravatar

Plugin to display user icons from Gravatar.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/avatars-gravatar[
Project]

[[branch-network]]
=== branch-network

This plugin allows the rendering of Git repository branch network in a
graphical HTML5 Canvas. It is mainly intended to be used as a
"project link" in a gitweb configuration or by other Gerrit GWT UI
plugins to be plugged elsewhere in Gerrit.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/branch-network[
Project] |
link:https://gerrit.googlesource.com/plugins/branch-network/+doc/master/src/main/resources/Documentation/about.md[
Documentation] |
link:https://gerrit.googlesource.com/plugins/branch-network/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[changemessage]]
=== changemessage

This plugin allows to display a static info message on the change screen.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/changemessage[
Project] |
link:https://gerrit.googlesource.com/plugins/changemessage/+doc/master/src/main/resources/Documentation/about.md[
Plugin Documentation] |
link:https://gerrit.googlesource.com/plugins/changemessage/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[delete-project]]
=== delete-project

Provides the ability to delete a project.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/delete-project[
Project] |
link:https://gerrit.googlesource.com/plugins/delete-project/+doc/master/src/main/resources/Documentation/about.md[
Documentation]

[[egit]]
=== egit

This plugin provides extensions for easier usage with EGit.

The plugin adds a download command for EGit that allows to copy only
the change ref into the clipboard. The change ref is needed for
downloading a Gerrit change from within EGit.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/egit[
Project] |
link:https://gerrit.googlesource.com/plugins/egit/+doc/master/src/main/resources/Documentation/about.md[
Documentation]

[[emoticons]]
=== emoticons

This plugin allows users to see emoticons in comments as images.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/emoticons[
Project] |
link:https://gerrit.googlesource.com/plugins/emoticons/+doc/master/src/main/resources/Documentation/about.md[
Documentation] |
link:https://gerrit.googlesource.com/plugins/emoticons/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[gitblit]]
=== gitblit

GitBlit code-viewer plugin with SSO and Security Access Control.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/gitblit[
Project]

[[github]]
=== github

Plugin to integrate with GitHub: replication, pull-request to Change-Sets

link:https://gerrit-review.googlesource.com/admin/repos/plugins/github[
Project]

[[gitiles]]
=== gitiles

Plugin running Gitiles alongside a Gerrit server.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/gitiles[
Project]

[[imagare]]
=== imagare

The imagare plugin allows Gerrit users to upload and share images.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/imagare[
Project] |
link:https://gerrit.googlesource.com/plugins/imagare/+doc/master/src/main/resources/Documentation/about.md[
Documentation] |
link:https://gerrit.googlesource.com/plugins/imagare/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[importer]]
=== importer

The importer plugin allows to import projects from one Gerrit server
into another Gerrit server.

Projects can be imported while both source and target Gerrit server
are online. There is no downtime required.

The git repository and all changes of the project, including approvals
and review comments, are imported. Historic timestamps are preserved.

Project imports can be resumed. This means a project team can continue
to work in the source system while the import to the target system is
done. By resuming the import the project in the target system can be
updated with the missing delta.

The importer plugin can also be used to copy a project within one Gerrit
server, and in combination with the link:#delete-project[delete-project]
plugin it can be used to rename a project.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/importer[
Project] |
link:https://gerrit.googlesource.com/plugins/importer/+doc/master/src/main/resources/Documentation/about.md[
Documentation]

[[its-plugins]]
=== Issue Tracker System Plugins

Plugins to integrate with issue tracker systems (ITS), that (based
on events in Gerrit) allows to take actions in the ITS. For example,
they can add comments to bugs, or change status of bugs.

All its-plugins have a common base implementation which is stored in
the `its-base` project. `its-base` is not a plugin, but just a
framework for the ITS plugins which is packaged within each ITS plugin.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/its-base[
its-base Project] |
link:https://gerrit.googlesource.com/plugins/its-base/+doc/master/src/main/resources/Documentation/about.md[
its-base Documentation] |
link:https://gerrit.googlesource.com/plugins/its-base/+doc/master/src/main/resources/Documentation/config.md[
its-base Configuration]

[[its-bugzilla]]
==== its-bugzilla

Plugin to integrate with Bugzilla.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/its-bugzilla[
Project] |
link:https://gerrit.googlesource.com/plugins/its-bugzilla/+doc/master/src/main/resources/Documentation/about.md[
Documentation]

[[its-jira]]
==== its-jira

Plugin to integrate with Jira.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/its-jira[
Project] |
link:https://gerrit.googlesource.com/plugins/its-jira/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[its-phabricator]]
==== its-phabricator

Plugin to integrate with Phabricator.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/its-phabricator[
Project] |
link:https://gerrit.googlesource.com/plugins/its-phabricator/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[its-rtc]]
==== its-rtc

Plugin to integrate with IBM Rational Team Concert (RTC).

link:https://gerrit-review.googlesource.com/admin/repos/plugins/its-rtc[
Project] |
link:https://gerrit.googlesource.com/plugins/its-rtc/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[its-storyboard]]
==== its-storyboard

Plugin to integrate with Storyboard task tracking system.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/its-storyboard[
Project] |
link:https://gerrit.googlesource.com/plugins/its-storyboard/+doc/master/src/main/resources/Documentation/about.md[
Documentation]

[[javamelody]]
=== javamelody

This plugin allows to monitor the Gerrit server.

This plugin integrates JavaMelody in Gerrit in order to retrieve live
instrumentation data from Gerrit.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/javamelody[
Project] |
link:https://gerrit.googlesource.com/plugins/javamelody/+doc/master/src/main/resources/Documentation/about.md[
Documentation] |
https://gerrit.googlesource.com/plugins/javamelody/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[labelui]]
=== labelui

The labelui plugin adds a user preference that allows users to choose a
table control to render the labels/approvals on the change screen
(similar to how labels/approvals were rendered on the old change
screen).

link:https://gerrit-review.googlesource.com/admin/repos/plugins/labelui[
Project] |
link:https://gerrit.googlesource.com/plugins/labelui/+doc/master/src/main/resources/Documentation/about.md[
Documentation]

[[menuextender]]
=== menuextender

The menuextender plugin allows Gerrit administrators to configure
additional menu entries from the WebUI.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/menuextender[
Project] |
link:https://gerrit.googlesource.com/plugins/menuextender/+doc/master/src/main/resources/Documentation/about.md[
Documentation] |
link:https://gerrit.googlesource.com/plugins/menuextender/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[metrics-reporter-elasticsearch]]
=== metrics-reporter-elasticsearch

This plugin reports Gerrit metrics to Elasticsearch.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/metrics-reporter-elasticsearch[
Project].

[[metrics-reporter-graphite]]
=== metrics-reporter-graphite

This plugin reports Gerrit metrics to Graphite.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/metrics-reporter-graphite[
Project].

[[metrics-reporter-jmx]]
=== metrics-reporter-jmx

This plugin reports Gerrit metrics to JMX.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/metrics-reporter-jmx[
Project].

[[metrics-reporter-prometheus]]
=== metrics-reporter-prometheus

This plugin exposes Gerrit metrics for consumption by Prometheus.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/metrics-reporter-prometheus[
Project].

[[motd]]
=== motd

This plugin can output messages to clients when pulling/fetching/cloning
code from Gerrit Code Review. If the client (and transport mechanism)
can support sending the message to the client, it will be displayed to
the user (usually prefixed by “remote: ”), but will be silently
discarded otherwise.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/motd[
Project] |
link:https://gerrit.googlesource.com/plugins/motd/+doc/master/src/main/resources/Documentation/about.md[
Documentation] |
link:https://gerrit.googlesource.com/plugins/motd/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[oauth-authentication-provider]]
=== OAuth authentication provider
This plugin enables Gerrit to use OAuth2 protocol for authentication.
Two different OAuth providers are supported:

* GitHub
* Google

https://github.com/davido/gerrit-oauth-provider[Project] |
https://github.com/davido/gerrit-oauth-provider/wiki/Getting-Started[Configuration]

[[owners]]
=== owners
This plugin provides a Prolog predicate `add_owner_approval/3` that
appends `label('Owner-Approval', need(_))` to a provided list.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/owners[Project] |
link:https://gerrit.googlesource.com/plugins/owners/+doc/master/README.md[Documentation]

[[project-download-commands]]
=== project-download-commands

This plugin adds support for project specific download commands.

Project specific download commands that are defined on a parent project
are inherited by the child projects. Child projects can overwrite the
inherited download command or remove it by assigning no value to it.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/project-download-commands[
Project] |
link:https://gerrit.googlesource.com/plugins/project-download-commands/+doc/master/src/main/resources/Documentation/about.md[
Documentation] |
link:https://gerrit.googlesource.com/plugins/project-download-commands/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[quota]]
=== quota

This plugin allows to enforce quotas in Gerrit.

To protect a Gerrit installation it makes sense to limit the resources
that a project or group can consume. To do this a Gerrit administrator
can use this plugin to define quotas on project namespaces.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/quota[
Project] |
link:https://gerrit.googlesource.com/plugins/quota/+doc/master/src/main/resources/Documentation/about.md[
Documentation]
link:https://gerrit.googlesource.com/plugins/quota/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[readonly]]
=== readonly

A plugin that makes the Gerrit server read-only by rejecting git pushes,
blocking HTTP PUT/POST/DELETE requests, and disabling SSH commands.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/readonly[
Project] |
link:https://gerrit.googlesource.com/plugins/readonly/+doc/master/src/main/resources/Documentation/about.md[
Documentation] |
link:https://gerrit.googlesource.com/plugins/readonly/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[ref-protection]]
=== ref-protection

A plugin that protects against commits being lost.

Backups of deleted or non-fast-forward updated refs are created under the
`refs/backups/` namespace.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/ref-protection[
Project] |
link:https://gerrit.googlesource.com/plugins/ref-protection/+doc/master/src/main/resources/Documentation/about.md[
Documentation]

[[reparent]]
=== reparent

A plugin that provides project reparenting as a self-service for project owners.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/reparent[
Project] |
link:https://gerrit.googlesource.com/plugins/reparent/+doc/master/src/main/resources/Documentation/about.md[
Documentation] |
link:https://gerrit.googlesource.com/plugins/reparent/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[review-strategy]]
=== review-strategy

This plugin allows users to configure different review strategies.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/review-strategy[
Project] |
link:https://gerrit.googlesource.com/plugins/review-strategy/+doc/master/src/main/resources/Documentation/about.md[
Documentation]

[[reviewers]]
=== reviewers

A plugin that allows adding default reviewers to a change.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/reviewers[
Project] |
link:https://gerrit.googlesource.com/plugins/reviewers/+doc/master/src/main/resources/Documentation/about.md[
Documentation] |
link:https://gerrit.googlesource.com/plugins/reviewers/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[reviewers-by-blame]]
=== reviewers-by-blame

A plugin that allows automatically adding reviewers to a change from
the git blame computation on the changed files. It will add the users
that authored most of the lines touched by the change, since these
users should be familiar with the code and can mostly review the
change.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/reviewers-by-blame[
Project] |
link:https://gerrit.googlesource.com/plugins/reviewers-by-blame/+doc/master/src/main/resources/Documentation/about.md[
Documentation] |
link:https://gerrit.googlesource.com/plugins/reviewers-by-blame/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[groovy-provider]]
=== scripting/groovy-provider

This plugin provides a Groovy runtime environment for Gerrit plugins in Groovy.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/scripting/groovy-provider[
Project] |
link:https://gerrit.googlesource.com/plugins/scripting/groovy-provider/+doc/master/src/main/resources/Documentation/about.md[
Documentation]

[[scala-provider]]
=== scripting/scala-provider

This plugin provides a Scala runtime environment for Gerrit plugins in Scala.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/scripting/scala-provider[
Project] |
link:https://gerrit.googlesource.com/plugins/scripting/scala-provider/+doc/master/src/main/resources/Documentation/about.md[
Documentation]

[[scripts]]
=== scripts

Repository containing a collection of Gerrit scripting plugins that are intended
to provide simple and useful extensions.

Groovy and Scala scripts require the installation of the corresponding
scripting/*-provider plugin in order to be loaded into Gerrit.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/scripts[Project]
link:https://gerrit.googlesource.com/plugins/scripts/+doc/master/README.md[Documentation]

[[server-config]]
=== server-config

This plugin enables access (download and upload) to the server config
files.  It may be used to change Gerrit config files (like
`etc/gerrit.config`) in cases where direct access to the file system
where Gerrit's config files are stored is difficult or impossible to
get.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/server-config[
Project]

[[serviceuser]]
=== serviceuser

This plugin allows to create service users in Gerrit.

A service user is a user that is used by another service to communicate
with Gerrit. E.g. a service user is needed to run the Gerrit Trigger
Plugin in Jenkins. A service user is not able to login into the Gerrit
WebUI and it cannot push commits or tags.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/serviceuser[
Project] |
link:https://gerrit.googlesource.com/plugins/serviceuser/+doc/master/src/main/resources/Documentation/about.md[
Documentation] |
link:https://gerrit.googlesource.com/plugins/serviceuser/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[uploadvalidator]]
=== uploadvalidator

This plugin allows to configure upload validations per project.

Project owners can configure blocked file extensions, required footers
and a maximum allowed path length. Pushes of commits that violate these
settings are rejected by Gerrit.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/uploadvalidator[
Project] |
link:https://gerrit.googlesource.com/plugins/uploadvalidator/+doc/master/src/main/resources/Documentation/about.md[
Documentation] |
link:https://gerrit.googlesource.com/plugins/uploadvalidator/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[verify-status]]
=== verify-status

This plugin adds a separate channel for Gerrit to store test metadata and
view them on the Gerrit UI.  The metadata can be stored in the Gerrit database
or in a completely separate datastore.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/verify-status[
Project] |
link:https://gerrit.googlesource.com/plugins/verify-status/+doc/master/src/main/resources/Documentation/about.md[
Documentation] |
link:https://gerrit.googlesource.com/plugins/verify-status/+doc/master/src/main/resources/Documentation/database.md[
Configuration]

[[websession-flatfile]]
=== websession-flatfile

This plugin replaces the built-in Gerrit H2 based websession cache with
a flatfile based implementation. This implementation is shareable
among multiple Gerrit servers, making it useful for multi-master
Gerrit installations.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/websession-flatfile[
Project] |
link:https://gerrit.googlesource.com/plugins/websession-flatfile/+doc/master/src/main/resources/Documentation/about.md[
Documentation] |
link:https://gerrit.googlesource.com/plugins/websession-flatfile/+doc/master/src/main/resources/Documentation/config.md[
Configuration]

[[x-docs]]
=== x-docs

This plugin serves project documentation as HTML pages.

link:https://gerrit-review.googlesource.com/admin/repos/plugins/x-docs[
Project] |
link:https://gerrit.googlesource.com/plugins/x-docs/+doc/master/src/main/resources/Documentation/about.md[
Documentation] |
link:https://gerrit.googlesource.com/plugins/x-docs/+doc/master/src/main/resources/Documentation/config.md[
Configuration]


GERRIT
------
Part of link:index.html[Gerrit Code Review]

SEARCHBOX
---------
