Categories
Laravel Development

Laravel Jetstream – Jet Another Headache

Surprisingly for the out of the box authentication scaffolding Laravel 8 uses Jetstream/Tailwind CSS framework. What does Tailwind CSS do? Well, it does more or less the same what Bootstrap does, except that for Bootstrap you have tons of tutorials, free code, and cheap templates.

Tailwind CSS, if you prefer this route, is not ugly expensive but neither dirty cheap (at present early access starts from $149.00 – get everything lifetime etc):

https://tailwindui.com/

Some free stuff you can get also here:

https://tailwindcss.com/components

There are more resources available, but what I found is that Bootstrap templates are much more advanced, which sounds normal, since Bootstrap was created in 2011. This will maybe change in few years. As it is now Tailwind CSS framework business enters market. It looks like Tailwind CSS is yet another implicitly paid package attached to Laravel,┬álike a kind of business dependency injection – here we have yet one more CSS framework, injected into Laravel 8 some functional parts.

Moreover, now for pagination Tailwind CSS is default setting. To get pagination layout in Bootstrap 4 you need to change some settings – simple stuff, but still some additional job. I do hope Laravel version 9 will not force Tailwind CSS as obligatory layout package.

Is Tailwind CSS much better than Bootstrap 4? No. Is Bootstrap 4 much better than Tailwind CSS. No.

I have to admit, that Jetstream/Tailwind CSS in Laravel 8 auth module works nicely. The problem is only if you try to extend the layout beyond the basic auth. They say, it is easy. Well, everything is easy after you waste time to learn how to do it.

Is Tailwind CSS worth to use? Well, taking into account early stage of evolution of this CSS framework (released in October 2019) I would prefer to use Bootstrap. It means that – for instance – the initial auth scaffolding would be in Jetstream/Tailwind CSS (it works nicely, so no need to repair it), but everything else would be in Bootstrap. It is not the best possible solution, because look will not be consistent, and this fact can be more or less important depending on project. But at least this approach can save much front end development time. The main reason behind this approach is that at present, at so early evolution stage of Tailwind CSS, the learning curve for Tailwind CSS is rather steep. I understand, that all CSS frameworks are the best, the simplest, the fastest existing according to their creators, but from my point of view, when I have to develop at least working prototype as fast as possible, I am more interested in speed of development, than in messing with granular, quantum beauty of some CSS framework. I understand also, that producers/creators of any piece of software try to make you involved, busy, believing in this or that, but ultimately, I don’t have so much time. If I can copy-and-paste some piece of Bootstrap which is responsive out of the box, and has acceptable look – I prefer to do it to save time.

The main advantage of Tailwind CSS is its nice, softish look, so if you like it, obviously go with it. Both CSS frameworks are good, but more useful and cheaper content/templates for instant use you will find with Bootstrap.

For fast development the best approach is to grab a nice looking template, inject it with functionality and leave it for somebody else for beautification. At present Boostrap lets you work this way.