Episode 79
Last Friday, we released Kirby 3.9.4. As the most important change, we added the Symfony YAML parser. It will eventually replace the current Spyc YAML parser, which is no longer maintained. For now, you need to enable the Symfony parser in your configuration if you already want to use it. Since the Symfony YAML parser enforces stricter rules, you might have to adjust your blueprints.
Kirby in the wild
Kirby plugins & kits
Kirby Types: Additional and extended type hints for your IDE. Adds the kirby types:create
command to your project. This command will create a file in your project's root directory that your IDE will pick.
Kirby Template Sugar: A lightweight template compiler that adds some syntactic sugar to Kirby's PHP templates.
With the Kirby Cacoa Kit, you get a headless Nuxt 3 Starter kit for Kirby.
The Kirby Laravel Vite plugin provides the vite() helper to include Vite assets in your Kirby project. This plugin works best with the laravel-vite-plugin.
The Kirby Template Attributes plugin brings Vue.js/Laravel-Blade-like attribute composition to the templates of your Kirby project.
The MarkdownPlus plugin replaces Kirby's Markdown compiler and adds some extensions, which you can find which you can find in its docs.
Learning Kirby
Kirby CMS für Designer/-innen: 3 evenings aimed at designers familiar with HTML, CSS and basic PHP templating. On-site course in German on September 19, 21 and 26 in Munich, Germany.
Florian Karsten developed a Kirby video course for beginners, but even "old hands" should find plenty of stuff to learn.
What started as a thread on Mastodon has evolved into a nice blog redesign video series presented by Manuel Matuzovic:
Frontend
Ahmad Shadeed explains CSS masking, what it is, how it works, and shows some use cases and examples of it.
Josh Comeau shares his personal view on how AI will affect frontend development, arguing that "things are going to change, but not in the scary way people are saying".
Speeding up the JavaScript ecosystem: an article in currently 4 parts: PostCSS, SVGO etc., module resolution, linting with eslint and npm scripts.
The HTML specification added a new grouping content element: The search element. The purpose of this new element is to add landmark parity with the existing aria roles. Currently, however, the new element isn't supported by any browsers yet.
Katie Hempenius gives us a deep dive into font fallbacks using the size-adjust
and font metric override APIs to reduce layout shift.
PHP
Mastering SAML Implementation in PHP: A Comprehensive Step-by-Step Guide.
Return types in PHP explained with examples. It adds a few to those that we listed in our own docs intro.
If you have a PHP application you want to update to the latest PHP version, check out this article that explains how Rector can help with that.
This & that
Lando is a cross-platform, free and open source development environment based on Docker technology to get your local development environment up and running.
WebAssembly cannot only power web applications, but also help accelerate the development of new browser features.
Although you don't need a database for Kirby, PHP developers are usually required to have a good understanding of MySQL. MySQL for developers takes you from schema and indexing to writing efficient queries, with no prior knowledge required.
Similar to hsl
, the OKLCH color notation allows the specification of colors based on lightness (L), chroma or color intensity (C), and hue (H), but allows a much wider range of colors and is based on human perception.