Laravel Packages

Write Single Page Applications using Laravel Splade

Published Updated

Laravel Splade, created by by Pascal Baljet, is a super easy way to build single-page applications (SPA) using Laravel Blade templates. Splade makes it easy to create modern, dynamic web applications that are a joy to use.

Splade provides useful Blade components that are enhanced with renderless Vue 3 components out of the box, such as the <Link /> Component component. It provides that SPA-like feeling, but you can use Blade, sprinkled with interactive Vue components when required.

As you can see, in the default installation, the <Link /> components fetch the page data via XHR and provide that SPA snappy feel without full page reloads.

You can use both Blade and Vue markup. Here's an example from Splade's <Toggle /> component. Note the v-show directive and @click listener from Vue, and the Blade-specific component and variable usage {{ }}:

<x-splade-toggle>
<div v-show="toggled">{{ $blog->full_content }}</div>
 
<div v-show="!toggled">
<p>{{ $blog->excerpt }}</p>
<button @click="toggle">Expand</button>
</div>
</x-splade-toggle>

If you need Custom Vue components, Splade has your back, and you can even utilize Server Side Rendering (SSR) to improve performance in your application.

If you also want to use Laravel Breeze or Laravel Jetstream, Splade provides starter kits for both. Splade also provides useful components out of the box you can use to get started quickly, with or without using the starter kits:

  • Forms
  • Links
  • Events
  • Flash
  • Modals
  • Table
  • Teleport
  • Toggle
  • Transition
  • And more!

You can get started with Splade quickly by checking out the homepage and accompanying documentation on splade.dev. You can also dive deeper and learn How Splade works under the hood.

Paul Redmond photo

Staff writer at Laravel News. Full stack web developer and author.

Sponsored

acquaintsoft logo
Acquaint Softtech

Hire Laravel developers with AI expertise at $20/hr. Get started in 48 hours.

Visit Acquaint Softtech

The latest

View all →
Compoships: Eloquent Relationships on Multiple Columns image

Compoships: Eloquent Relationships on Multiple Columns

Read article
MKSine: A Filament CMS with Plugins, Themes, and Blocks image

MKSine: A Filament CMS with Plugins, Themes, and Blocks

Read article
Cancel In-Flight Form Submissions in Inertia.js v3.7 image

Cancel In-Flight Form Submissions in Inertia.js v3.7

Read article
Laravel Starter Kits Now Ship with Vite+ image

Laravel Starter Kits Now Ship with Vite+

Read article
Pessimistic Locking in Laravel Eloquent with refreshForUpdate() image

Pessimistic Locking in Laravel Eloquent with refreshForUpdate()

Read article
Mask Query Bindings in Laravel Exception Messages image

Mask Query Bindings in Laravel Exception Messages

Read article