John Koster
@johnmkoster.bsky.social
Doing things with Laravel and Statamic
Some progress from the weekend. Forte's error recovery and extensibility models are now extremely overpowered.
Here's a short code example without a custom extension I wrote to test:
Here's a short code example without a custom extension I wrote to test:
November 10, 2025 at 2:32 PM
Some progress from the weekend. Forte's error recovery and extensibility models are now extremely overpowered.
Here's a short code example without a custom extension I wrote to test:
Here's a short code example without a custom extension I wrote to test:
Working on expanding Forte's extensibility model. The parser already supports extensions, but after the day the tokenizer will as well 🔥
November 8, 2025 at 10:23 PM
Working on expanding Forte's extensibility model. The parser already supports extensions, but after the day the tokenizer will as well 🔥
@ianlandsman.com Catching up on the latest MT - figured it'd be fun to provider some extra Forte lore. It's a full Blade+HTML parser and AST-manipulation library, with some infrastructure to safely opt-in to AST changes, add new Blade features (without modifying the core framework), and a lot more!
November 4, 2025 at 5:53 PM
@ianlandsman.com Catching up on the latest MT - figured it'd be fun to provider some extra Forte lore. It's a full Blade+HTML parser and AST-manipulation library, with some infrastructure to safely opt-in to AST changes, add new Blade features (without modifying the core framework), and a lot more!
Happy Tuesday, everyone!
November 4, 2025 at 3:38 PM
Happy Tuesday, everyone!
Anyone got any ideas for cool logo/branding ideas for "Forte" - a robust HTML/Blade parser and AST manipulation library for Laravel? 🤔
Getting close to working on the documentation and site.
Getting close to working on the documentation and site.
November 2, 2025 at 6:57 PM
Anyone got any ideas for cool logo/branding ideas for "Forte" - a robust HTML/Blade parser and AST manipulation library for Laravel? 🤔
Getting close to working on the documentation and site.
Getting close to working on the documentation and site.
Working on the core Forte parser this morning. Making some expensive properties lazy-loaded or Just In Time. I'm pretty excited!
November 2, 2025 at 5:44 PM
Working on the core Forte parser this morning. Making some expensive properties lazy-loaded or Just In Time. I'm pretty excited!
Doing some Livewire 4 and Phiki 2 source diving this weekend. Should be pretty chill!
November 1, 2025 at 4:26 PM
Doing some Livewire 4 and Phiki 2 source diving this weekend. Should be pretty chill!
Happy Wednesday, everyone!
October 29, 2025 at 1:53 PM
Happy Wednesday, everyone!
A fun look at something I've been chipping away at: leveling up the View Scaffolding feature in #statamic
It generates templates, taking your blueprints and field configuration into consideration!
It generates templates, taking your blueprints and field configuration into consideration!
October 26, 2025 at 10:29 PM
A fun look at something I've been chipping away at: leveling up the View Scaffolding feature in #statamic
It generates templates, taking your blueprints and field configuration into consideration!
It generates templates, taking your blueprints and field configuration into consideration!
Another fun preview. Got timelines working for Livewire AJAX requests - and the timeline entries get associated with the live DOM tree (hovering over a view in this image highlights that node in the page):
October 26, 2025 at 12:30 AM
Another fun preview. Got timelines working for Livewire AJAX requests - and the timeline entries get associated with the live DOM tree (hovering over a view in this image highlights that node in the page):
It's always fun to see how systems break. I have a poorly designed app that I am stress testing the debugger with - I want the debugger to remain usable, even when observing an absolute flood of information from a badly designed app.
October 25, 2025 at 9:12 PM
It's always fun to see how systems break. I have a poorly designed app that I am stress testing the debugger with - I want the debugger to remain usable, even when observing an absolute flood of information from a badly designed app.
A quick progress update on my Alpine, Blade and Livewire dev tool project!
I've been working hard on improving visualizations, adding features that I've always wanted (like hovering over an SVG element and seeing what it looks like), as well as some client-side performance monitoring!
I've been working hard on improving visualizations, adding features that I've always wanted (like hovering over an SVG element and seeing what it looks like), as well as some client-side performance monitoring!
October 25, 2025 at 6:58 PM
A quick progress update on my Alpine, Blade and Livewire dev tool project!
I've been working hard on improving visualizations, adding features that I've always wanted (like hovering over an SVG element and seeing what it looks like), as well as some client-side performance monitoring!
I've been working hard on improving visualizations, adding features that I've always wanted (like hovering over an SVG element and seeing what it looks like), as well as some client-side performance monitoring!
Happy Sunday, everyone!
October 19, 2025 at 12:38 PM
Happy Sunday, everyone!
Happy Friday, everyone!
October 10, 2025 at 6:54 PM
Happy Friday, everyone!
Spending an unreasonable amount of time thinking about which colors best represent the following events:
* View-related
* Database-related
* Everything else
Should probably step away from the desk 😅
* View-related
* Database-related
* Everything else
Should probably step away from the desk 😅
October 8, 2025 at 10:29 PM
Spending an unreasonable amount of time thinking about which colors best represent the following events:
* View-related
* Database-related
* Everything else
Should probably step away from the desk 😅
* View-related
* Database-related
* Everything else
Should probably step away from the desk 😅
I have a grand vision, and an incredibly high bar, for what I think a really great Laravel, Alpine and Blade debug tool should be.
I am making good progress towards that vision, though! 🧑💻💅
I am making good progress towards that vision, though! 🧑💻💅
October 7, 2025 at 4:03 PM
I have a grand vision, and an incredibly high bar, for what I think a really great Laravel, Alpine and Blade debug tool should be.
I am making good progress towards that vision, though! 🧑💻💅
I am making good progress towards that vision, though! 🧑💻💅
Went for a long walk to think through the solution to a tough problem. I think I've got all the edge cases sorted out; the solution isn't necessarily "simple", but I believe I've simplified it as much as I can.
Well, back to it then!
Well, back to it then!
October 4, 2025 at 4:48 PM
Went for a long walk to think through the solution to a tough problem. I think I've got all the edge cases sorted out; the solution isn't necessarily "simple", but I believe I've simplified it as much as I can.
Well, back to it then!
Well, back to it then!
Got something to work this evening that is even crazier than the previous stuff (but integrates with it very cleanly).
Will work to clean it up and share it probably sometime next week
Will work to clean it up and share it probably sometime next week
October 3, 2025 at 3:42 AM
Got something to work this evening that is even crazier than the previous stuff (but integrates with it very cleanly).
Will work to clean it up and share it probably sometime next week
Will work to clean it up and share it probably sometime next week
I've been a bit busy over the past few months! I've still been hard at work on Forte, a new Blade and HTML parser, but also a secret project built with it!
High-level, I've been working on a browser-based development tool, focused on Alpine, Livewire, and Laravel Blade.
High-level, I've been working on a browser-based development tool, focused on Alpine, Livewire, and Laravel Blade.
September 28, 2025 at 11:12 PM
I've been a bit busy over the past few months! I've still been hard at work on Forte, a new Blade and HTML parser, but also a secret project built with it!
High-level, I've been working on a browser-based development tool, focused on Alpine, Livewire, and Laravel Blade.
High-level, I've been working on a browser-based development tool, focused on Alpine, Livewire, and Laravel Blade.
A little over 4 days left in the month to reach my overly-ambitious goal. Thinking about the scope that's left, I should be able to make it!
September 26, 2025 at 2:34 PM
A little over 4 days left in the month to reach my overly-ambitious goal. Thinking about the scope that's left, I should be able to make it!
Happy Thursday, everyone!
September 25, 2025 at 2:59 PM
Happy Thursday, everyone!
Felt like I haven't really made much progress on things, but took a moment to look at everything built behind the scenes over the last month or so.
And yea, its a lot 😅
And yea, its a lot 😅
September 22, 2025 at 4:25 PM
Felt like I haven't really made much progress on things, but took a moment to look at everything built behind the scenes over the last month or so.
And yea, its a lot 😅
And yea, its a lot 😅
Oldest kiddo just used Forge to deploy a site for a high school presentation. Two things:
1. I feel old
2. Forge is still my favorite
1. I feel old
2. Forge is still my favorite
September 22, 2025 at 4:23 AM
Oldest kiddo just used Forge to deploy a site for a high school presentation. Two things:
1. I feel old
2. Forge is still my favorite
1. I feel old
2. Forge is still my favorite
There are so many things I want to get done today
a cat is sitting in front of a laptop with the words busy busy busy below it .
ALT: a cat is sitting in front of a laptop with the words busy busy busy below it .
media.tenor.com
September 21, 2025 at 5:35 PM
There are so many things I want to get done today
Happy Saturday, everyone!
September 20, 2025 at 4:45 PM
Happy Saturday, everyone!