Ray
Ray est une application de bureau pour organiser, inspecter, filtrer et archiver la sortie de debug de votre code, sans encombrer l’app.
Qu’est-ce que Ray ?
Ray est une application de bureau dédiée pour organiser et inspecter la sortie de debug en dehors de l’exécution de votre application. Elle vous permet d’envoyer des valeurs (chaînes, tableaux, objets, etc.) avec une syntaxe cohérente ray(...), puis de les visualiser, filtrer et revoir les résultats dans Ray.
Son objectif principal est de garder la sortie de debug lisible et structurée tout en réduisant le besoin d’encombrer votre app avec du code de logging supplémentaire. Ray prend également en charge le debug distant via SSH et inclut des outils pour mettre en pause et mesurer l’exécution dans des contextes PHP/Laravel.
Fonctionnalités principales
- Vue de bureau organisée pour la sortie de debug : Garde la sortie de debug dans une app dédiée pour inspecter les résultats sans dépendre des consoles de navigateur.
- Rendu formaté pour de nombreux types de données : Envoie des valeurs comme des chaînes, tableaux, objets et tables, et les rend de manière soignée pour inspection.
- Filtrage, étiquetage et recherche dans les messages : Filtre par type, origine ou étiquettes personnalisées, et utilise la recherche pour retrouver des sorties antérieures.
- Contrôles d’archivage et de vidage : Vide l’écran et archive les messages pour référence ultérieure lors de comparaisons de sorties ou d’investigation d’issues difficiles à reproduire.
- Debug distant via SSH : Connectez-vous à des serveurs via SSH pour diffuser la sortie de debug de code distant dans Ray.
- Saut vers votre IDE : Sautez depuis la sortie dumpée vers l’emplacement pertinent dans votre éditeur (avec support pour de nombreux IDE, comme indiqué sur le site).
- Syntaxe de debug multi-langages/frameworks : Le site décrit l’utilisation de la même approche style
dumpdans divers langages et frameworks. - Outils d’exécution Ray 3.0 pour PHP/Laravel : Inclut pause et mesure d’exécution pour mettre en pause le code PHP/Laravel et mesurer le temps entre appels.
- Réception automatique de sortie runtime (Ray 3.0) : Le site mentionne la réception automatique de sorties (ex. : queries, jobs, exceptions) sans ajouter d’appels explicites dans votre code.
- Extensibilité et personnalisation : Changez les thèmes, étendez Ray avec des macros, et créez votre propre client pour envoyer des données depuis des langages/frameworks non supportés.
- Fonctionnalités IA (Ray 3.0) : Interagissez avec la sortie IA directement dans Ray, incluant composants/prototypes HTML générés par IA et explications structurées pour diagrammes Mermaid & ERD via un visualiseur intégré.
- Serveur MCP pour agents IA : Le site indique qu’un serveur MCP permet aux agents IA d’accéder à des fenêtres/outils pour lire, générer et produire du contenu.
Comment utiliser Ray
- Téléchargez Ray et achetez une licence si nécessaire (le site affiche un prix de 49 USD et mentionne des licences d’1 an gérées par Spatie).
- Envoyez la sortie de debug vers Ray avec la syntaxe
ray(...)montrée sur le site (exemples incluent étiquetage, tables, application de couleurs et filtrage par attributs d’appel). - Inspectez et gérez les messages dans Ray : utilisez recherche et filtres pour affiner les résultats, et archivez les messages pour comparer les sorties ultérieurement.
- (Optionnel) Configurez le debug distant : connectez-vous à un serveur via SSH pour que Ray diffuse la sortie de debug d’exécutions distantes.
- (Optionnel) Utilisez navigation IDE et outils d’exécution : sautez vers l’emplacement source depuis la sortie Ray et utilisez les outils de pause & mesure pour PHP/Laravel.
Cas d’usage
- Inspection de valeurs complexes sans encombrer votre app : Envoyez chaînes, tableaux, objets et tables vers Ray (avec étiquettes et formatage) pour comprendre l’état pendant le développement sans vous fier à une sortie console brute.
- Debug de requêtes ou chemins de code spécifiques avec filtres : Ajoutez couleurs/étiquettes aux appels
ray(...), puis filtrez par type/origine/étiquette dans Ray pour isoler les messages pertinents. - Comparaison de sorties entre tentatives : Archivez les messages avant/après changements de code pour revoir les sorties antérieures lors de dépannage d’issues intermittentes.
- Debug de serveurs distants via SSH : Diffusez la sortie de debug de code s’exécutant sur serveurs distants dans Ray, pour inspecter les résultats sans copier manuellement les logs.
- Debug de performance et flux PHP/Laravel : Mettez en pause l’exécution et mesurez le temps entre appels, plus réception automatique de certaines sorties runtime (queries, jobs, exceptions) comme décrit pour Ray 3.0.
- Travail avec diagrammes de base de données et explications de schémas via IA : Utilisez les fonctionnalités Ray 3.0 pour faire expliquer les schémas de base de données par IA et visualisez la sortie structurée en format Mermaid ou ERD.
FAQ
-
Ray est-il uniquement pour le débogage basé sur navigateur ? Non. Le site décrit Ray comme une application de bureau dédiée qui maintient la sortie de debug organisée en dehors de l’exécution de votre app.
-
Que prend en charge Ray pour le formatage de la sortie ? Le site indique que Ray formate la sortie reçue (p. ex. chaînes, tableaux, objets) et peut afficher des tableaux ; il mentionne aussi le vidage de requêtes, e-mails, événements et traces de pile.
-
Ray peut-il déboguer du code exécuté sur un serveur distant ? Oui. Le site décrit la connexion via SSH et le streaming de la sortie de debug vers Ray.
-
Ray remplace-t-il dd() ou d’autres débogueurs ? La page indique que Ray ne remplace pas dd ni xdebug ; il est décrit comme un troisième outil comblant l’écart entre le vidage rapide et les flux de débogage plus structurés.
-
Quelles sont les nouveautés de Ray 3.0 ? La page met en avant la pause & mesure d’exécution, les interactions IA (y compris composants HTML et visionneuses Mermaid/ERD), et un serveur MCP pour agents IA.
Alternatives
- Journalisation en navigateur et sortie console (p. ex.
console.log, outils de développement navigateur) : Utile pour des vérifications rapides, mais les résultats sont liés à l’environnement navigateur et non présentés dans une chronologie de bureau dédiée et searchable. - Helpers de « vidage » dans le framework d’application (p. ex. débogage style
dd()) : Rapide et direct, mais garde généralement la sortie dans la réponse de l’application/navigateur plutôt que dans une app de bureau séparée avec filtrage/recherche et archivage. - Outils de journalisation distante/observabilité : Alternatives pour collecter des logs d’environnements distants, axés généralement sur l’agrégation et la surveillance de logs plutôt que sur l’inspection structurée et basée sur messages décrite pour Ray.
- Outils REPL/débogage basés sur terminal : Peuvent inspecter des valeurs pendant le développement, mais ne fournissent pas forcément la même UI de bureau organisée, filtrage et workflow de saut IDE référencés sur le site Ray.
Alternatives
OpenFlags
OpenFlags est un système open source de feature flags auto-hébergé pour déploiement progressif : évaluation locale via SDK et contrôle REST.
Rectify
Rectify est une plateforme d’opérations tout-en-un pour SaaS : monitoring, analytics, support, roadmaps, changelogs et gestion des agents, pilotés par conversation.
PingPulse
PingPulse surveille les workflows d’agents IA en production : suivi temps réel des handoffs, visualisation et alertes configurables pour détecter les problèmes.
KIT.domains
KIT.domains automatise la surveillance des domaines et le suivi SSL, avec alertes d’expiration et changements DNS (MX/NS) dans un tableau partagé et calendrier.
Sleek Analytics
Sleek Analytics : analytics légères et respectueuses de la vie privée, avec suivi en temps réel des visiteurs. Provenance, pages consultées et durée.
Falconer
Falconer est une plateforme de connaissances qui se met à jour automatiquement pour équipes rapides : écrivez, partagez et trouvez une documentation interne fiable.