The Filament Wire: Issue 1
Hello and welcome to issue one of The Filament Wire.
So what's been happening since my last little teaser in the pre-issue? Well first up, I need to apologise because I missed my publishing deadline of Friday. The plan is to publish on the 1st and 3rd Friday of each month and here we are at issue one and we're already late. Sorry folks, I'll try not to let it happen again.
In my defence, we hit temperatures up and around 42C last week and during the weekend and without any air-conditioning/climate control my ancient MacBook was struggling to cope as much as I was. I also run an organic pig farm raising Gascon Black Pigs (hence my handle) and the welfare of my pigs trumped the publishing deadline. Anyway, by way of apology, here is a picture of Eyelashes, enjoying a cool down in the wallow that I dug out for her.
Ok, back to the serious stuff. Filament's popularity continues to grow with weekly averaged daily installs hovering at just under 1000/day and total installs at over 130,000. These are a fantastic figures, so thank you to everyone who has downloaded Filament - whether you are using it to solve real world business issues, in personal projects or just evaluating it to see why everyone loves it - thank you!
Wow, Dan and Ryan have been busy, with 15 tagged releases since the pre-issue, including a minor version dot bump.
In amongst all the support and fixes, there were 3 main features/enhancements that caught my eye:
Added ->grid() support for the repeater field. This couldn't have been better timed for me, I was literally checking the docs for this functionality when the discussion came up in discord. Quick work from the community (@flux and @ralhjsmit iirc) and boom!
Grouped Table and Page actions. Quite a lot going on here but as is usual a simple and elegant implementation from Dan & Ryan. You can now group table and page actions - saving yourself some valuable real estate on your layouts. Dan & Ryan live-streamed the process - you can still see it here.
The Select/Repeater->relationship() modifier. The main reason I'm highlighting this is that this change has deprecated various components that you may want to be aware of going forwards: BelongsToSelect, HasManyRepeater, BelongsToManyMultiSelect and BelongsToManyCheckboxList are all no more - they will all still function and continue to work but I'd look to update your code to use the new
We had a fairly large change that warranted a Semver jump from 2.12 -> 2.13. Dan has already written a chunky blog post explaining everything, and as a good developer who always follows the DRY principal, I'll just link you to the article.
Also a big shout to everyone that contributed fixes, tweaks or updates to the docs - you're all unsung heroes and your efforts are truly appreciated.
The marketplace is thriving, with another ten or so plug-ins having been added since I published the pre-issue a fortnight back.
I know I promised a bit of a review and look into a plug-in - but to be honest, time ran away and I haven't had a chance to play properly with my chosen plug-in. I am currently building an application for my wife's business which is around wedding and event catering and I had hoped to install and start using @saade's implementation of Full Calendar. I know I will be building this functionality out later this week - so you will definitely get the full low down on it in the next issue.
Also, let me know in the comments if there is a particular plug-in you'd like to know more about and I'll get that scheduled in.
Another section of the Filament world that is growing thanks to our community contributions. I check-in and have a read through of the new entries most days.
It's a great resource and I've already managed to point people to tricks that answer the questions they've posed in Discord (yeah, yeah, I know it was my tip, but hey....)
Again, thank you everyone that has contributed and for this issue's top tip I'm going to go with 'Testing Plugins' from Ramón Zayas - a nice example of how to set up admin users for testing. Thanks Ramón!
Doesn't actually have anything to do with golf but is another section of the Filament site that is building up nicely. I dropped by to have quick look through and Roadmap contributed by Dennis caught my attention. I'm not going to over-commit and promise to have a review of it for the next issue but it's certainly on my list of things to evaluate. It looks like it could be quite useful and hopefully will just drop into an existing Filament project.
Speaking of roadmaps, Dan linked us to the Filament v2 feature roadmap (gotta admire that smooth segue) - I don't believe they are listed in priority order but that gives you a taste of what's planned beyond the normal support and fixes.
And yes, there are already whispers and murmurings about Filament v3 and what may or may not be appearing. However, we can save that speculation for another issue.
Ok, so I think that is just about it for this issue, I hope you found something interesting or useful to read. The Filament Wire is for you, the community, so please let me know in the comments what you would like to see included - whether it's a particular plug-in, tutorials, general chat about the state of the TALL stack or PHP or any other tools.
I'm hoping to have a Q&A session with Dan or Ryan in the near future - let me know what sort of questions you'd like to know the answers to and I'll get the thumb-screws out!
Thanks for reading this far