Laravel Jetstream. What for?

Hello! On the eve of the start of the course “Framework Laravel”, we continue the series of articles about new items in Laravel 8 from our expert and part-time active member of the Russian Laravel community – Vitaly Yushkevich.


This article is a continuation of the overview of the new Laravel 8. It was originally thought that this article will be a continuation of the overview, mainly affecting Jetstream. But lately it has not been done only by the lazy.

On the one hand, most of the developers are lazy (in a good sense of the word), on the other hand, “one more review” will not bring much benefit. Since the last update is very hotly discussed in different communities (in Russian and beyond), I wanted to try to get an answer to the question – why? Let’s try to find the answer to this and other questions together.

Laravel Jetstream – what is it?

Laravel Jetsream Is a modern looking application skeleton with a fairly wide range of basic functions. Some of them are optional.

Out of the box functionality examples:

  • Authorization, including:
    • registration
    • password recovery
    • two-factor authentication
    • email verification
    • displaying a list of browser sessions, with the ability to logout on other devices
  • Profile Management
    • user data
    • password management
    • managing avatars
    • deleting a profile
  • API token management (integration with the package Laravel Sanctum) including rights management
  • Managing teams with different roles

Under the hood is the Fortify package (for the authorization block), mentioned by Sanctum above. TailwindCss on frontend. And a choice of one of two front-end stacks:

  • Livewire – a bunch of livewire and blade. Recommended if you want to make reactive web applications, but don’t want to go into the jungle of vueJs and modern JS.
  • Inertia.js – a bunch of Inertia framework and VueJs. This stack resembles working with a full-fledged SPA application in Vuejs while maintaining routing on the Laravel side.

A quick overview on Laracast

What does this mean and why is there so much noise?

There has been a qualitative change (this definition does not contain an evaluative characteristic of the direction of this change) in the ideology and approach to the development of web applications.

In recent years, some accepted and familiar approach to development has formed, which was thrown out in the initial release. The UI package (old approach) added support for the new version of laravel after a big wave of community outrage, but the residue remained. And a postscript about unwanted use that was also relaxed under the same pressure of community outrage.

Taylor (the main maintainer of Laravel) bet on not the most popular frameworks and technologies, but close to his views (TailwindCss and Livewire, for example, were often mentioned in the development of his commercial services).

From a beginner’s point of view, the entry point to the framework has certainly increased.

I would say more – this entry point has changed and become different.

It should be noted that more than 3 weeks have passed since the release of version 8 of the framework, and the rhetoric has changed somewhat. Desire to go to Taylor’s meeting (there should be a star for a note), some concessions made to the community.

So, for example, after the release of Laravel 8, a post from Ross Wintle circulated across the network with criticism (the link to this post, including, was on Habré). On October 6, an update of the post was released, in which many corners were smoothed – https://rosswintle.uk/2020/09/laravel-8-jetstream-and-learning-laravel/

There was also a fairly active discussion on reddit. October 5 Taylor spent almost an hour streamwhere he explained his position, explained why it is good and answered other questions related to Jetstream.

What for?

The answer to this question is both simple and complex. And at the same time, everyone can have their own

Taylor is quite self-sufficient in choosing the vector for the development of his offspring (here, too, without a quantitative assessment, is it good or bad). He picks the tools he likes and is willing to easily cut out what he doesn’t like without asking the community for feedback. But he still tries to approach responsibly the decisions made and listen to the community, even if it happens “after” and there is some rollback. Whether Taylor will turn out to be right and “innovator” in the chosen vector of the framework’s development is difficult to say now, only time will give an unequivocal answer to this question.

I find in this release a certain sign on the movement of the framework into its certain specialization. Laravel is becoming a more pronounced “web developer framework” that allows you to prototype a website, web application, or even a SAAS service in a minimal amount of lines of code and time. Laravel also retains tools for quickly creating APIs for SPA, mobile applications. Laravel really allows you to do this quickly and elegantly in its own way.

Taylor has created a number of commercial products that are load-bearing and fast enough. Therefore, the answer “is it possible to create a loaded application on Laravel” has clear answers.

On the other hand, Laravel’s problems don’t go anywhere. There is even more magic, traits, facades. All this does not have the best effect on performance and consumed resources. The question of whether Laravel is an excellent choice for developing a high-load service is no longer so unambiguous. At a minimum, the development of such a service will require deeper knowledge of the framework and solving a number of problems in ways that are not described in the documentation (and sometimes significantly differ).

Is Laravel “in the game”? – definitely yes!

This release seemed to me more like an attack on the CMS market with an abundance of projects on WordPress. Laravel does have a lot to offer “this marketplace”.

Read more:

  • What’s new in Laravel 8

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *