Visit is a Beautiful HTTP CLI Tool for Humans

Published on by

Visit is a Beautiful HTTP CLI Tool for Humans image

Visit is a CLI tool by Spatie to see an HTTP response in a beautiful way. Think of it as cURL for humans:

To get started with visit, you can pass it a URL:

visit laravel-news.com

If you've installed the recommended HTML syntax highlighting tool, you'll see something similar to the following:

Besides passing a URL, you can also do some pretty powerful stuff like filtering for both HTML and JSON responses:

# Given the following HTML response, you can filter the results
# <html>
# <body>
# <div>First div</div>
# <p>First paragraph</p>
# <p>Second paragraph</p>
# </body>
# </html>
#
 
visit <your-url> --filter="p"
# Returns:
# <p>First paragraph</p>
# <p>Second paragraph</p>

Here's an example of a filtered JSON response:

# Given the following JSON response, you can filter the results
# {
# "firstName": "firstValue",
# "nested": {
# "secondName": "secondValue"
# }
# }
 
visit <your-url> --filter="nested.secondName"
# Returns `secondValue`

Along with the global composer CLI for Visit, Spatie has an accompanying spatie/laravel-visit package to visit any URI in a Laravel app quickly. You can even log in as a user when running the artisan visit command:

# Pass user.id
php artisan visit /api/user/me --user=1
 
# or the --user flag
php artisan visit /api/user/me --user=john@example.com

Another cool trick is showing an exception stack trace instead of the rendered exception page:

php artisan visit /page-with-exception --show-exception

We've only really scratched the surface of all the features possible with visit. You can learn more about this package, get full installation instructions, and view the source code on GitHub.

Also, Freek Van der Herten wrote an in-depth blog post about this package that has more details: Introducing Visit: a CLI tool made for humans to make network requests.

Paul Redmond photo

Full stack web developer. Author of Lumen Programming Guide and Docker for PHP Developers.

Filed in:
Cube

Laravel Newsletter

Join 40k+ other developers and never miss out on new tips, tutorials, and more.

image
Tinkerwell

Version 4 of Tinkerwell is available now. Get the most popular PHP scratchpad with all its new features and simplify your development workflow today.

Visit Tinkerwell
Kirschbaum logo

Kirschbaum

Providing innovation and stability to ensure your web application succeeds.

Kirschbaum
Shift logo

Shift

Running an old Laravel version? Instant, automated Laravel upgrades and code modernization to keep your applications fresh.

Shift
Bacancy logo

Bacancy

Supercharge your project with a seasoned Laravel developer with 4-6 years of experience for just $2500/month. Get 160 hours of dedicated expertise & a risk-free 15-day trial. Schedule a call now!

Bacancy
LoadForge logo

LoadForge

Easy, affordable load testing and stress tests for websites, APIs and databases.

LoadForge
Paragraph logo

Paragraph

Manage your Laravel app as if it was a CMS – edit any text on any page or in any email without touching Blade or language files.

Paragraph
Lucky Media logo

Lucky Media

Bespoke software solutions built for your business. Partner with Lucky Media, your favorite Laravel Development Agency!

Lucky Media
Lunar: Laravel E-Commerce logo

Lunar: Laravel E-Commerce

E-Commerce for Laravel. An open-source package that brings the power of modern headless e-commerce functionality to Laravel.

Lunar: Laravel E-Commerce
Laravel Forge logo

Laravel Forge

Easily create and manage your servers and deploy your Laravel applications in seconds.

Laravel Forge
Oh Dear logo

Oh Dear

Oh Dear is the best all-in-one monitoring tool for all your Laravel apps.

Oh Dear
Tinkerwell logo

Tinkerwell

The must-have code runner for Laravel developers. Tinker with AI, autocompletion and instant feedback on local and production environments.

Tinkerwell

The latest

View all →
Get insights into all your Laravel notifications with Paragraphs new package image

Get insights into all your Laravel notifications with Paragraphs new package

Read article
FrankenPHP v1.0 is Here image

FrankenPHP v1.0 is Here

Read article
Self-healing URLs in Laravel image

Self-healing URLs in Laravel

Read article
Laravel 10.35 Released image

Laravel 10.35 Released

Read article
Solve n+1 queries in PHP with Scout APM image

Solve n+1 queries in PHP with Scout APM

Read article
Show Outdated Composer Dependencies in Laravel Pulse image

Show Outdated Composer Dependencies in Laravel Pulse

Read article