No description
  • PHP 72.1%
  • Vue 27.9%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-08-11 11:03:09 +03:00
src - commands added 2026-08-11 11:03:09 +03:00
vendor Initial commit 2024-02-13 18:04:37 +03:00
.editorconfig Initial commit 2024-02-13 18:04:37 +03:00
.gitignore gitignore added 2024-02-13 18:05:53 +03:00
composer.json - commands added 2026-08-11 11:03:09 +03:00
composer.lock Initial commit 2024-02-13 18:04:37 +03:00
index.css - commands added 2026-08-11 11:03:09 +03:00
index.js - commands added 2026-08-11 11:03:09 +03:00
index.php - commands added 2026-08-11 11:03:09 +03:00
package.json Initial commit 2024-02-13 18:04:37 +03:00
README.md - readme updated 2026-08-11 10:59:29 +03:00

Fire up the Kirby cache!

Issues & Feedback

This library is developed at git.e9li.com and mirrored to GitHub. If you found a bug or have a suggestion, you can either:

Installation

  • composer require e9li/kirby-fire

Commands

kirby fire:up                 # crawl every page in every language, then its thumbs
kirby fire:up --no-media      # …without the thumbs
kirby fire:thumbs             # render pending thumbs in-process

fire:up warms the page cache by requesting every page over HTTP, and picks the thumbs out of the returned src/srcset attributes so a crawl warms those too.

Kirby does not generate a thumbnail while a page renders — it writes one job file per thumb and runs the darkroom only when the media URL is first requested. So fire:up's thumb pass costs a full HTTP request and response body per size per image. fire:thumbs works the pending jobs off directly instead, which is what makes the two-step form worth using on a large site:

kirby fire:up --no-media && kirby fire:thumbs

Two things to know about fire:thumbs:

  • It can only render what a page render has already queued. With the page cache warm nothing re-renders, so wiping the media folder means clearing the page cache first — otherwise the thumbs can never be regenerated.
  • fire:up runs over HTTP, so its job files belong to the webserver user while fire:thumbs runs as the CLI user. Both need write access to the media folder.

Panel

The plugin adds a Fire view that does the same crawl from the browser, plus a button to flush the page cache.

Options

// site/config/config.php
'e9li.kirby-fire' => [
    // warm a different domain than kirby()->url()
    'domain' => '',
    'ignore' => [
        'page'     => ['error'],
        'language' => [],
    ],
],