# Interface yii\base\BootstrapInterface

Implemented by | yii\debug\Module, yii\filters\ContentNegotiator, yii\gii\Module, yii\shell\Bootstrap
Available since version | 2.0
Source Code | https://github.com/yiisoft/yii2/blob/master/framework/base/BootstrapInterface.php

BootstrapInterface is the interface that should be implemented by classes who want to participate in the application bootstrap process.

The main method bootstrap() will be invoked by an application at the beginning of its `init()` method.

Bootstrapping classes can be registered in two approaches.

The first approach is mainly used by extensions and is managed by the Composer installation process. You mainly need to list the bootstrapping class of your extension in the `composer.json` file like following,

    {
        // ...
        "extra": {
            "bootstrap": "path\\to\\MyBootstrapClass"
        }
    }

If the extension is installed, the bootstrap information will be saved in yii\base\Application::$extensions.

The second approach is used by application code which needs to register some code to be run during the bootstrap process. This is done by configuring the yii\base\Application::bootstrap() property:

    return [
        // ...
        'bootstrap' => [
            "path\\to\\MyBootstrapClass1",
            [
                'class' => "path\\to\\MyBootstrapClass2",
                'prop1' => 'value1',
                'prop2' => 'value2',
            ],
        ],
    ];

As you can see, you can register a bootstrapping class in terms of either a class name or a configuration class.

For more details and usage information on BootstrapInterface, see the guide article on bootstrapping applications.

## Public Methods

Hide inherited methods

Method | Description | Defined By
--- | --- | ---
bootstrap() | Bootstrap method to be called during application bootstrap stage. | yii\base\BootstrapInterface

## Method Details

bootstrap() public abstract method

Bootstrap method to be called during application bootstrap stage.

public abstract void bootstrap ( $app )
$app | yii\base\Application | The application currently running