Wafy's Tools

By Jeff , 28 May, 2026

This lesson was about forms and storage. Not sure how I feel about the way forms are created in Laravel. I am a little spoiled by Laminas, in that they use form objects to generate and validate the forms. Laravel seems to let you create your form in the view and then in the controller you can validate the form. While this is just a small amount of code, I am not sure I like it. It is very simple to add validation and even customize the messages.

By Jeff , 28 May, 2026

This was a relatively short lesson. Pretty simple and showed off how to build components more. Like the Layout component it looks like you can build sub-views that you can put code to be displayed. Seems like a neat concept, verse building a view object to do similar things.

By Jeff , 28 May, 2026

I am beginning to see the appeal of Laravel. There are a lot of built in functions for the database and models. Learned about some new features of PHP 8 that hadn't tried to use also. Between the database and the models there are a lot of the basic functions built it, even some not so basic ones. For example there is a latest function for the model that will look at the latest entries based on the timestamps automatically. As long as your fields match their expected names, it just works.

By Jeff , 28 May, 2026

This lesson was all about the database functions in Laravel. This is one thing that I have to give Laravel some credit. I do like their migration feature. They have abstracted away the database to a file that will create and remove tables as you need to though the artisan script.

By Jeff , 28 May, 2026

Kind of knew already what MVC is. Laminas uses a MVC structure for their framework as well. It is pretty simple and a similar to what Laminas does, just in a slightly different way. With Laminas you have a route configuration in the module's config.php file. In there you do your dependency injection and setup of the Controller. With Laravel, they have (at least currently) a separate file for routes that is so far kind of hard coded. Where as the Laminas can be more dynamic. Again this is just a boot camp. 

By Jeff , 22 May, 2026

Had to do a few things to my setup a bit to make things work a little better. Some things I might not need or need to change if I put this in production. Ran into a bit of CORS issue once I had to rebuild the project directory. Due to the Docker container I had a bit of an issue with the Vite configuration. It needed a couple things to get things working for the server that runs when you run dev with Composer. After some googling and a small chat with AI. I ended up adding the following to the vite.config.js file:

By Jeff , 21 May, 2026

I have decided to start with Laravel as it seems to be the most popular currently. From what I have learned from starting their boot camp, I can see why. Though it kind of frustrates me a bit which I will explain. It seems to be a big ecosystem involved with it. They have embraced AI and have added their own cloud system as well. It is a bit overwhelming, coming from a guy that prefers to host his own projects. Digging in a bit and looking past all of the external pieces, it does look like you can build an application with it and still host it locally.

By Jeff , 21 May, 2026

I have been using the PHP framework Laminas for as long as it has been around. I started with the Zend Framework and followed it up to the current iterations of Laminas. It has been a great PHP framework. I love the individual components, the flexibility it has and the ease it is to setup. 

By Jeff , 4 May, 2026

Semi-productive month. Unfortunately still no job and still need to finish the libraries. Still debating on switching frameworks but given the jobs out there, I might need to change languages too. Most of the PHP jobs are asking for Larval or Symfony, Laminas isn't really used. Though Laminas itself is seeing thing disappear too. For the MVC component I have to go find something to replace it. Which means a big rewrite, which for at least one it needs it anyways. Which isn't giving much motivation to work on them.

By Jeff , 6 April, 2026

Well the most productive month yet I think. It was determine that Gitea doesn't allow HTML in their Wiki tab. Which really sucks because I want to see some HTML that is generated from some of the tools that I am using for metrics and other things. It sounds like there is a Pages plugin that I can use to view those, which I hope to look at as soon as I get caught up with the libraries and maybe the apps.