Skip to content

Glossary

Laravel Livewire: lively screens without a front-end project

An extension that lets parts of a page update without a second project in JavaScript coming into being.

Between a classic web page and an application that feels like a program there normally lies a second project: a front end in JavaScript, with its own build, its own dependencies and an interface in between. For many line-of-business applications that is more effort than the comfort gained is worth.

Livewire offers a middle road. The interface stays on the server, in ordinary Blade templates. When somebody clicks something, Livewire sends a request in the background and swaps out the affected section. For development that means: one language, one project, one place where the business logic sits.

What it suits and what it does not

It suits forms with dependencies, filters and tables, dialogues, search fields with suggestions. So most of what internal applications need.

It reaches its limit when the interface computes a lot in the browser, has to work offline or must react to every movement without delay. Every interaction is a trip to the server, and that cannot be optimised away. For requirements like those, a front end of its own is the more honest choice.

FAQ

Häufige Fragen

Does the page work without JavaScript?
The first render comes entirely from the server and is therefore readable without JavaScript. The interaction after that needs it. For a public information page that is worth thinking about; for an internal tool behind a login, in practice it is not.

Related

Terms that belong with this one

A project, or a question?

Write and tell us what it is about. You get an assessment from somebody who works with Laravel themselves, not from a sales desk.