News

Laravel Valet Supports Custom Per-Site Drivers

Published
Laravel Valet Supports Custom Per-Site Drivers image

Laravel Valet is an incredible tool for getting a local development environment running in no time at all.

It’s driver based, and each driver adds support for a different type of application, framework, CMS, etc.

If you’d like to add support for something that doesn’t yet exist, it’s pretty simple to create your own driver, and share it with the community.

While there are a number different drivers out of the box, and even more that exist out there, some of them can make assumptions about how your project will be set up.

For example, the Laravel driver assumes your web root is located in a public directory. If you’ve renamed it to public_html, Valet simply won’t recognize that it’s Laravel.

To remedy this, you can create your own local driver that applies for a single project.

Just follow the steps to create a driver, but name it LocalValetDriver.php and place it in your project’s root directory.

<?php
 
class LocalValetDriver extends LaravelValetDriver
{
public function serves()
{
return true;
}
public function frontControllerPath($sitePath, $siteName, $uri)
{
return $sitePath.'/public_html/index.php';
}
}

You can either extend the base ValetDriver class to write the full driver from scratch or extend an existing driver and just override what you need.

Jason Varga photo

One of the Statamic Gentlemen. The Aussie one.

Sponsored

serpapi logo
SerpApi

The Web Search API for Your LLM and AI Applications

Visit SerpApi

The latest

View all →
Laravel Read-Through Filesystem: Lazy Storage Migration image

Laravel Read-Through Filesystem: Lazy Storage Migration

Read article
Read-Through Disks and Debounced Listeners in Laravel 13.26 image

Read-Through Disks and Debounced Listeners in Laravel 13.26

Read article
Lerd: A Free, Open Source Herd Alternative for Linux and macOS image

Lerd: A Free, Open Source Herd Alternative for Linux and macOS

Read article
Let's Encrypt HTTPS on an IP Address With FrankenPHP image

Let's Encrypt HTTPS on an IP Address With FrankenPHP

Read article
Laravel Chores: Resumable Data Operations and Cleanups image

Laravel Chores: Resumable Data Operations and Cleanups

Read article
NativePHP v4: Build Native iOS and Android UI in Blade image

NativePHP v4: Build Native iOS and Android UI in Blade

Read article