Understand and fix bugs faster
Ray is a desktop application that serves as the dedicated home for debugging output. Send, format and filter debug information from both local projects and remote servers.
Thanks for downloading Ray!
function myAwesomeFunction() {
// Send strings, arrays, object,... $string = 'My first debug Item'; ray($string);
// Send as much as you want $array = [ 'a' => 1, 'b' => ['c' => '🕺'], ]; ray($array);
// Apply a color // and use Ray's color filters $string2 = 'A green statement'; ray($string2)->green();
}
array:2 [ ▼ "a" => 1 "b" => array:1 [▶] ]
Available for / /
Good lookin' debug info
Strings, array, objects, … you can send anything to Ray. Output gets formatted automatically and displays the origin of your calls.
Organize calls
Collapse and expand calls, or group items that belong together. Assign Ray colors to your dumps, so you can make use of the color filters in the UI.
Ray loves Laravel
When installed in a Laravel app, Ray can format models and queries, track events, and even render mailables.
Setting breakpoints
You can pause your code. No need to install a special PHP extension.
Your IDE's sidekick
Use system-wide hotkeys to jump to Ray, or have its compact window permanently float above all other windows.
Debug faster in WordPress
When installed in a WordPress app, Ray can format show the queries you executed, all sent mails, and much more.
Remote debugging? No problem!
Ray is able to display debugging information from your server servers. This happens securely via SSH.
Multi-window goodness
Ray can display debugging information for each project in a separate window.
![](/images/screenshots-100.jpg)
Easy on the eyes
Ray presents debugging information in a clean way. This will greatly help you understand and fix bugs faster.
Nice people saying nice things
![]()
Ray is Life
Taylor OtwellLaravel Founder & Creator
![]()
Ray is a part of my Essentials toolbox. It has the snapiness of a real debugger, but the simplicity of
dd()
Nuno MaduroSoftware engineer at Laravel
![]()
Ray sheds light on your code and brightens your day. Simple and convenient, there’s no other debugging tool I’d rather reach for.
Luke DowningCreator of Pest in Practice
![]()
I'm an Xdebug user, but I still, find myself using Ray a lot because it is just so easy to use and beautiful ✨
Christoph RumpelPHP Developer and teacher
![]()
Debugging my application is so much easier thanks to Ray. No more dd() or \Log::info() all over the place. Ray, all the way.
Tony LeaCreator of The Dev Dojo
![]()
As a day one customer, not a single day passes without using Ray. It’s an essential tool in my toolbox. It’s as simple as dd, but way more powerful.
Joren Van HochtPHP Developer at Take The Lead
![]()
Where dd() falls short, Ray is sure to plug the gaps in your workflow. It's so much more than just checking a payload... it's your sidekick for performance refactoring too.
Dan HarrinLead Developer at Stagent
![]()
I've been using Ray since it came out and I've never needed anything else. I don't feel like working with complicated debugging tools, nor is it necessary with Ray.
Robin MartijnBuilding Cronly.app
![]()
Despite being awesome in so many different ways, ray is the missing dd() for pure API applications.
Andre BielCo-founder Nice Outside
![]()
Ray is a 'ray' of sunshine that saves me time digging into log files or the response tab in chrome. Wordpress, Laravel, Yii: I've used ray everywhere and it's done nothing but make me more productive.
JLFull Stack Wildcard Developer
![]()
I love that I have a separate window for my dump statements and not mix them with html. Since I’m using Ray, I find myself reaching out to other debugging tools less because most of the times Ray is just what I need.
Marian PopPhp & Laravel Developer
![]()
I use Ray almost everyday.
Jeffrey van RossumWordPress and Laravel developer
![]()
Everybody loves Raymond! This tool has become a staple in my daily workflow.
Jesse LeiteDeveloper at Statamic
![]()
Ray is the app I've been missing in my development toolkit. Debugging any sized application is now a breeze.
James BrooksSoftware engineer at Laravel
![]()
Ray is my go-to debugging solution for every project. It's easy to use while still being powerful enough to display the debugging information I need.
Patrick OrganSoftware engineer
![]()
Ray is a must have in every artisan toolbox. dd() with steroids.
Fabio IvonaSoftware engineer at def:studio
![]()
Day to day, Ray has been my must-have tool when working with projects. Being able to quickly debug to a seperate, non intrusive window really persuaded me with Ray.
Charlie JosephDeveloper at Analyse.net
![]()
Ray will give you super powers.
Ron NorthripVP of Engineering at Blue Check Me
![]()
Ray is a tool you don’t think you need until you use it. Now I can’t work without it.
Alex Garrett-SmithFounder Team Code Course
![]()
Ray is undoubtedly the best debugging tool currently 💪. I'm trying to convince the whole team to use it ♥️
Dom ThomasSpanish Programming Hero
![]()
Since purchasing Ray my beard has been growing. I used to rip it out when debugging.
JeremyManaging Director of Tecuisine
![]()
As an amateur developer that swears by
dd()
, I was thrilled to hear about Ray. Now I can feel like a real developer, even without using 'real' debugging tools!
Michael DyryndaTechnical Lead at Nodifi
![]()
Ray is the missing debugger when dd’ing just won’t cut it. It doesn’t replace dd or xdebug, it’s a third tool to solve the gap inbetween.
Oliver NybroeLaravel Developer
![]()
Ray is the most simple debugging tool available today. I love using it and I consider it essential to my every day workflow.
Steve BaumanCreator of Showcode and Ldap Record
![]()
Ray makes me enjoy debugging again. Its beauty and its simplicity. If a project doesn't use Ray yet, the first action I do is to install Ray. Every single time.
Stefan BauerAuthor of Laravel Secrets
![]()
dd() is for now, ray() is forever… or at least until you clear your log screen.
CanecoFull Stack Developer at Mediacare
![]()
I have just started using ray and I just love the simplicity of the tool. It is a neat way for debugging without a configuration hassle and I love the pause feature rather than running sleep.
Daniel KoopWordPress and Laravel developer
![]()
Ray is the Mike Tyson of debugging.
Martin JooWeb developer
![]()
Ray makes my debugging experience much more enjoyable - it is added to all of my projects.
Jack MollartBackend Engineer
![]()
I use Ray because it works everywhere, including in production.
ChrisRescuer of projects
![]()
I didn’t renew my license because I thought I don’t need Ray. Turns out I do need Ray.
MatFull Stack Developer
Simple syntax
- PHP
- JavaScript
-
ray($anything);
- Send a string, arrays, object, … to Ray
-
ray($anything, $somethingElse);
- Send as much as you want
-
ray($anything)->green();
- Apply a color, so you can use Ray's color filters
-
ray()->queries();
- See all queries executed by your Laravel app
-
ray()->measure();
- Check execution time and memory usage
-
ray()->trace();
- Find out where your code was called from
-
ray()->pause();
- Pause your code
-
ray()->ban();
- Keep it cool while debugging
-
ray(anything);
- Send a string, arrays, object, … to Ray
-
ray(anything, somethingElse);
- Send as much as you want
-
ray(anything).green();
- Apply a color, so you can use Ray's color filters
-
ray().measure();
- Check execution time
-
ray().trace();
- Find out where your code was called from
-
ray().pause();
-
Pause code execution within your code; must be called using
await
-
ray().ban();
- Keep it cool while debugging