PHPackages                             bnomei/kirby3-bolt - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. bnomei/kirby3-bolt

AbandonedArchivedKirby-plugin

bnomei/kirby3-bolt
==================

Kirby 3 Plugin for a fast Page lookup even in big content trees

1.2.4(4y ago)246691[3 PRs](https://github.com/bnomei/kirby3-bolt/pulls)MITPHPPHP &gt;=7.3.0

Since Mar 20Pushed 3y ago1 watchersCompare

[ Source](https://github.com/bnomei/kirby3-bolt)[ Packagist](https://packagist.org/packages/bnomei/kirby3-bolt)[ Fund](https://buymeacoff.ee/bnomei)[ Fund](https://paypal.me/bnomei)[ RSS](/packages/bnomei-kirby3-bolt/feed)WikiDiscussions master Synced yesterday

READMEChangelog (8)Dependencies (4)Versions (11)Used By (0)

> Mainly intended to be used with now deprecated AutoID plugin. Use my Boost plugin instead since that inherited lots of Bolts logic.

Kirby 3 Bolt
============

[](#kirby-3-bolt)

[![Release](https://camo.githubusercontent.com/1919d693b60eed120cc849417f57634028ac386721683a08bccc4a97b2f73eba/68747470733a2f2f666c61742e62616467656e2e6e65742f7061636b61676973742f762f626e6f6d65692f6b69726279332d626f6c743f636f6c6f723d616538316666)](https://camo.githubusercontent.com/1919d693b60eed120cc849417f57634028ac386721683a08bccc4a97b2f73eba/68747470733a2f2f666c61742e62616467656e2e6e65742f7061636b61676973742f762f626e6f6d65692f6b69726279332d626f6c743f636f6c6f723d616538316666)[![Build Status](https://camo.githubusercontent.com/a10672c4362f05f7c0003a9fa1832ae2c01edc3152ed885917163fd4d5a8611a/68747470733a2f2f666c61742e62616467656e2e6e65742f7472617669732f626e6f6d65692f6b69726279332d626f6c74)](https://travis-ci.com/bnomei/kirby3-bolt)[![Coverage Status](https://camo.githubusercontent.com/a89e5e7991c1b809783a3ac79fd975fc3ae4a932eaf9375bab87cf089a536ae1/68747470733a2f2f666c61742e62616467656e2e6e65742f636f766572616c6c732f632f6769746875622f626e6f6d65692f6b69726279332d626f6c74)](https://coveralls.io/github/bnomei/kirby3-bolt)[![Maintainability](https://camo.githubusercontent.com/3f7ccdd847a07691f36edd669109796853dd8d9cc5d0b640dfd4b4f48c750724/68747470733a2f2f666c61742e62616467656e2e6e65742f636f6465636c696d6174652f6d61696e7461696e6162696c6974792f626e6f6d65692f6b69726279332d626f6c74)](https://codeclimate.com/github/bnomei/kirby3-bolt)[![Twitter](https://camo.githubusercontent.com/b90e4b58a887e8ad09ec267628b75199a48522a9e01e88b129e5d2d730dffe50/68747470733a2f2f666c61742e62616467656e2e6e65742f62616467652f747769747465722f626e6f6d65693f636f6c6f723d363664396566)](https://twitter.com/bnomei)

Kirby 3 Plugin for a fast Page lookup even in big content trees

Commercial Usage
----------------

[](#commercial-usage)

> **Support open source!**
>
> This plugin is free but if you use it in a commercial project please consider to sponsor me or make a donation.
> If my work helped you to make some cash it seems fair to me that I might get a little reward as well, right?
>
> Be kind. Share a little. Thanks.
>
> ‐ Bruno

MONEY[Github sponsor](https://github.com/sponsors/bnomei)[Patreon](https://patreon.com/bnomei)[Buy Me a Coffee](https://buymeacoff.ee/bnomei)[Paypal dontation](https://www.paypal.me/bnomei/15)[Hire me](mailto:b@bnomei.com?subject=Kirby)Installation
------------

[](#installation)

- unzip [master.zip](https://github.com/bnomei/kirby3-bolt/archive/master.zip) as folder `site/plugins/kirby3-bolt` or
- `git submodule add https://github.com/bnomei/kirby3-bolt.git site/plugins/kirby3-bolt` or
- `composer require bnomei/kirby3-bolt`

Why is Bolt faster and how much?
--------------------------------

[](#why-is-bolt-faster-and-how-much)

Because it does not scan each directory and file but skips as many of them as possible. Once you use the Page-Object in your code Kirby will lazily load uninitalized properties.

How much is gained depends on how many have been skipped. You can in average expect it to be n-times faster by the average folder count in your content tree. Example: 1000 pages in 10 folders 3 levels deep: 10\*10\*10. If you need a page from the third level Kirby would have to create a page index of 10+10+10=30 pages but Bolt will create only 3.

Usage
-----

[](#usage)

```
// lets assume 1000 pages: 10*10*10
$id = 'this-page-has/ten-siblings/in-every-subfolder';
$page = page($id); // kirby core
$page = bolt($id); // ~10x faster lookup

// can lookup beginning at a certain page as well
$page = $somePage->bolt($idInTree);

// it's even faster when you look up based on a directory name
$page = bolt('1_this-page-has/5_ten-siblings/3_in-every-subfolder');
```

Works great with
----------------

[](#works-great-with)

- [kirby3-autoid](https://github.com/bnomei/kirby3-autoid) where it speeds up the page lookup

Alternative
-----------

[](#alternative)

- [kirby3-boost](https://github.com/bnomei/kirby3-boost) which is like Bolt + AutoID but with Caching

Related Plugins
---------------

[](#related-plugins)

- [kirby-resolve](https://github.com/lukaskleinschmidt/kirby-resolve) by Lukas Kleinschmidt

Disclaimer
----------

[](#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](https://github.com/bnomei/kirby3-bolt/issues/new).

License
-------

[](#license)

[MIT](https://opensource.org/licenses/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.

Credits
-------

[](#credits)

based on idea in

- [kirby-resolve](https://github.com/lukaskleinschmidt/kirby-resolve)

###  Health Score

30

—

LowBetter than 64% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity23

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity57

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~90 days

Recently: every ~130 days

Total

7

Last Release

1700d ago

PHP version history (2 changes)1.0.1PHP &gt;=7.2.0

1.2.3PHP &gt;=7.3.0

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/3265642?v=4)[Bruno Meilick](/maintainers/bnomei)[@bnomei](https://github.com/bnomei)

---

Top Contributors

[![bnomei](https://avatars.githubusercontent.com/u/3265642?v=4)](https://github.com/bnomei "bnomei (33 commits)")

---

Tags

contentfastkirby3kirby3-cmskirby3-pluginlookuppagetreepagefastlookupkirby3kirby3-pluginkirby3-cmsfindByID

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/bnomei-kirby3-bolt/health.svg)

```
[![Health](https://phpackages.com/badges/bnomei-kirby3-bolt/health.svg)](https://phpackages.com/packages/bnomei-kirby3-bolt)
```

###  Alternatives

[fabianmichael/kirby-meta

Your all-in-one powerhouse for any SEO and metadata needs imaginable.

6910.7k1](/packages/fabianmichael-kirby-meta)[schnti/cachebuster

A plugin for Kirby 3 CMS to add modification timestamps to css and js files

108.3k1](/packages/schnti-cachebuster)[bnomei/kirby3-php-cachedriver

PHP based Cache-Driver

112.6k](/packages/bnomei-kirby3-php-cachedriver)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
