Skip to content

getkirby/composer-installer

Repository files navigation

Kirby Composer Installer

CI Status Coverage Status

This is Kirby's custom Composer installer for the Kirby CMS. It is responsible for automatically choosing the correct installation paths if you install the CMS via Composer.

It can also be used to automatically install Kirby plugins to the site/plugins directory.

Installing the CMS

Default configuration

If you require the getkirby/cms package in your own composer.json, there is nothing else you need to do:

{
  "require": {
    "getkirby/cms": "^3.0"
  }
}

Kirby's Composer installer (this repo) will run automatically and will install the CMS to the kirby directory.

Custom installation path

You might want to use a different installation path. The path can be configured like this in your composer.json:

{
  "require": {
    "getkirby/cms": "^3.0"
  },
  "extra": {
    "kirby-cms-path": "kirby" // change this to your custom path
  }
}

Disable the installer for the CMS

If you prefer to have the CMS installed to the vendor directory, you can disable the custom path entirely:

{
  "require": {
    "getkirby/cms": "^3.0"
  },
  "extra": {
    "kirby-cms-path": false
  }
}

Please note that you will need to modify your site's index.php to load the vendor/autoload.php file instead of Kirby's bootstrap.php.

Installing plugins

Support in published plugins

Plugins need to require this installer as a Composer dependency to make use of the automatic installation to the site/plugins directory.

You can find out more about this in our plugin documentation.

Usage for plugin users

As a user of Kirby plugins that support this installer, you only need to require the plugins in your site's composer.json:

{
  "require": {
    "getkirby/cms": "^3.0",
    "superwoman/superplugin": "^1.0"
  }
}

The installer (this repo) will run automatically, as the plugin dev added it to the plugin's composer.json.

Custom installation path

If your site/plugins directory is at a custom path, you can configure the installation path like this in your composer.json:

{
  "require": {
    "getkirby/cms": "^3.0",
    "superwoman/superplugin": "^1.0"
  },
  "extra": {
    "kirby-plugin-path": "site/plugins" // change this to your custom path
  }
}

What’s Kirby?

  • getkirby.com – Get to know the CMS.
  • Try it – Take a test ride with our online demo. Or download one of our kits to get started.
  • Documentation – Read the official guide, reference and cookbook recipes.
  • Issues – Report bugs and other problems.
  • Feedback – You have an idea for Kirby? Share it.
  • Forum – Whenever you get stuck, don't hesitate to reach out for questions and support.
  • Discord – Hang out and meet the community.
  • Mastodon – Spread the word.
  • Instagram – Share your creations: #madewithkirby.

License

http://www.opensource.org/licenses/mit-license.php

Author

Lukas Bestle https://getkirby.com