---
name: "Mojolicious::Plugin"
section: "3pm"
platform: "linux"
package: "libmojolicious-perl"
version: "9.39+dfsg-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Mojolicious::Plugin"
---

# Mojolicious::Plugin(3pm)

Plugin base class

## NAME

Mojolicious::Plugin - Plugin base class

## SYNOPSIS

```
  # CamelCase plugin name
  package Mojolicious::Plugin::MyPlugin;
  use Mojo::Base 'Mojolicious::Plugin', -signatures;
  sub register ($self, $app, $conf) {
    # Magic here! :)
  }
```

## DESCRIPTION

Mojolicious::Plugin is an abstract base class for Mojolicious plugins.

See "PLUGINS" in Mojolicious::Plugins for a list of plugins that are available by default.

## METHODS

Mojolicious::Plugin inherits all methods from Mojo::Base and implements the following new ones.

### register

```
  $plugin->register(Mojolicious->new);
  $plugin->register(Mojolicious->new, {foo => 'bar'});
```

This method will be called by Mojolicious::Plugins at startup time. Meant to be overloaded in a subclass.

## SEE ALSO

Mojolicious, Mojolicious::Guides, \<https://mojolicious.org\>.
