Skip to content
Plugin to check health of your CMS installation
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
classes
src
vendor
.babelrc
.editorconfig
.gitattributes
.gitignore
.php_cs.dist
README.md
composer.json
composer.lock
doctor-checks-defaults.json
index.css
index.js
index.php
kirby3-doctor-screenshot-1.gif
package.json
vue.config.js
yarn.lock

README.md

Kirby 3 Doctor

GitHub release License Kirby Version Kirby 3 Pluginkit

Plugin to check health of your CMS installation

Commerical Usage

This plugin is free but if you use it in a commercial project please consider to

Installation

  • unzip master.zip as folder site/plugins/kirby3-doctor or
  • git submodule add https://github.com/bnomei/kirby3-doctor.git site/plugins/kirby3-doctor or
  • composer require bnomei/kirby3-doctor

Screenshots

doctor

Usage Kirby Panel

fields:
  doctor:
    type: doctor
    label: Perform checks
    # progress: Performing checks...

Usage Kirby API (post Authentification)

let doctor = fetch('https://kirby3-plugins.bnomei.com/api/plugin-doctor/check')
  .then(response => response.json())
  .then(json => {
      console.log(json);
  });

Provided Checks

  • CheckPHPVersion (zendframework): Kirby installation requirements
  • CheckPHPExtension (zendframework): Kirby installation requirements
  • CheckKirbyFolders (zendframework): Read/Write-Access to core Kirby folders
  • CheckComposerSecurity: https://security.symfony.com/
  • CheckGitFolder: No public .git folder
  • CheckHtaccess: Has a .htaccess file
  • CheckKirbyAccount: Has at least one account
  • CheckKirbyCacheSize: Cache folder not too big
  • CheckKirbyLicense: License exists (on non localhost)
  • CheckKirbyMediaSize: Media folder not too big
  • CheckKirbySystem: Kirby build-in system checks
  • CheckKirbyVersion: Is Kirby up-to-date
  • CheckSSL: Using https scheme

Custom Checks

You can add custom checks or disable build checks using the checks setting in the config file.

return [
    'bnomei.doctor.checks' => [
        "MyNamespace\\MyClass" => true, // enable new
        "Bnomei\\CheckComposerSecurity" => false, // disable build-in
    ],
    // ...
];

Contribute: You have an idea for a check? Please create a new issue or submit a PR.

Settings

All settings have to be prefixed with bnomei.doctor..

expire

  • default: 24*60 minutes to cache the results and not run tests again

debugforce

  • default: true will expire the cache every time if option('debug') is true as well.

checks

  • default: []
  • example: ["MyNamespace\\MyCheckClass" => true, "Bnomei\\CheckGitFolder" => false]

Attention: Namespaces must use \\-notion.

log.enabled

  • default: true will create a log file if Kirby Log Plugin is installed as well.

log

  • default: callback to kirbyLog()

Credits

Disclaimer

This plugin is provided "as is" with no guarantee. Use it at your own risk and always test it yourself before using it in a production environment. If you find any issues, please create a new issue.

License

MIT

It is discouraged to use this plugin in any project that promotes racism, sexism, homophobia, animal abuse, violence or any other form of hate speech.

You can’t perform that action at this time.