3.2 documentation

Latest Stable Version Total Downloads MIT License

Config Component is a configuration with environment based support for Laravel 5 and above. The component is actually based from Laravel 4 configuration.

  1. Version Compatibility
  2. Installation
  3. Configuration
  4. Change Log

Version Compatibility

Laravel Config
5.0.x 3.0.x
5.1.x 3.1.x
5.2.x [email protected]


To install through composer, simply put the following in your composer.json file:

    "require": {
        "orchestra/config": "~3.0"

And then run composer install from the terminal.

Quick Installation

Above installation can also be simplify by using the following command:

composer require "orchestra/config=~3.0"


To swap Laravel 5 default configuration, all you need to do is add the following code to bootstrap/app.php:


Configuration Caching Support

Config Component also bring an enhanced php artisan config:cache support to speed up configuration loading, some features include:

  • Caching packages/namespaced config instead of just application config directory.
  • Enforcing lazy loaded packages config by including list of packages config key in compile.config.

In order to do this you need to replace Illuminate\Foundation\Provider\ArtisanServiceProvider with a new App\Providers\ArtisanServiceProvider:

<?php namespace App\Providers;

use Orchestra\Config\Console\ConfigCacheCommand;
use Illuminate\Foundation\Providers\ArtisanServiceProvider as ServiceProvider;

class ArtisanServiceProvider extends ServiceProvider
     * Register the command.
     * @return void
    protected function registerConfigCacheCommand()
        $this->app->singleton('command.config.cache', function ($app) {
            return new ConfigCacheCommand($app['files']);

Don't forget to update your config/app.php to replaces Illuminate\Foundation\Provider\ArtisanServiceProvider with App\Providers\ArtisanServiceProvider.

Caching lazy loaded packages file

In order to force certain packages to be included in config caching, you can specify either the relative key of desired packages in your config/compile.php file:


return [

    // ...

    'config' => [
        'orchestra/foundation::config', // if package config is group under "config.php"
        'orchestra/foundation::roles',  // Using one of the key available in "config.php"
        'orchestra/html::form',         // When package contain "form.php"