Laravel Valet: A Streamlined Development Environment for OS X
Laravel Valet simplifies local development, especially for quick demos or disposable projects. It leverages OS X's built-in software and tools, eliminating the need for complex configurations like /etc/hosts
modifications and offering easy public sharing.
Key Features & Considerations:
OS X Exclusive: Currently, Valet is only compatible with OS X. While potentially adaptable to Linux, Windows support is unlikely without a significant rewrite.
Shared System Resources: Unlike virtual machines or containers (Vagrant/Docker), Valet utilizes your system's PHP installation. This means all projects share the same PHP version, database, and extensions. This can lead to dependency conflicts, making it unsuitable for large, complex projects.
Simplified Virtual Hosting: Valet employs DnsMasq to create virtual hosts. Any project folder becomes accessible via {foldername}.dev
. No /etc/hosts
edits are necessary, simplifying the setup process considerably.
Public Sharing with Ngrok: The valet share
command instantly makes a project publicly accessible via a unique URL using Ngrok, ideal for client previews or collaborative development.
Limited Framework Support (but extensible): While initially supporting Laravel, Lumen, Statamic, Craft, WordPress, Jigsaw, and static HTML, Valet's architecture allows for custom drivers, enabling support for additional frameworks and project structures.
Dev/Prod Parity Concerns: The shared system environment differs significantly from production, potentially causing discrepancies. Valet is best suited for small-scale projects or those where the production environment meticulously mirrors the development setup.
Video Overview:
For a quick overview (note: may contain NSFW content), check out this video:
Installation and Usage:
Valet requires Homebrew and Composer. Installation involves running composer global require laravel/valet
followed by valet install
. Commands like valet park
, valet link
, and valet share
manage projects and sharing. PHP version switching is also supported.
Conclusion:
Laravel Valet offers a lightweight and convenient development experience for smaller projects. Its ease of use and public sharing capabilities are significant advantages. However, the shared system resources and OS X limitation restrict its applicability to larger or more complex applications. Consider its limitations before adopting it for critical projects. Alternatives like Homestead remain viable options for cross-platform development and greater isolation.
The above is the detailed content of What Is Laravel Valet, and Why All the Fuss?. For more information, please follow other related articles on the PHP Chinese website!