UStackUStack
Ray icon

Ray

Ray ist eine Desktop-App, die Debug-Ausgaben aus deinem Code organisiert. Werte inspizieren, filtern und archivieren – ohne dein App-Chaos.

Ray

Was ist Ray?

Ray ist eine spezialisierte Desktop-App zur Organisation und Inspektion von Debug-Ausgaben außerhalb der Laufzeitumgebung deiner Anwendung. Sie ermöglicht das Senden von Werten (Strings, Arrays, Objekte und mehr) mit einer einheitlichen ray(...)-Syntax, die du dann in Ray anzeigen, filtern und erneut aufrufen kannst.

Ihr Kernzweck ist es, Debug-Ausgaben lesbar und strukturiert zu halten, während der Bedarf an zusätzlichem Logging-Code in deiner App reduziert wird. Ray unterstützt zudem Remote-Debugging über SSH und bietet Tools zum Pausieren und Messen der Ausführung in PHP/Laravel-Kontexten.

Wichtige Funktionen

  • Organisierte Desktop-Ansicht für Debug-Ausgaben: Hält Debug-Ausgaben in einer dedizierten App, damit du Ergebnisse inspizieren kannst, ohne auf Browser-Konsolen angewiesen zu sein.
  • Formatierte Darstellung für viele Datentypen: Sendet Werte wie Strings, Arrays, Objekte und Tabellen und rendert sie übersichtlich zur Inspektion.
  • Filtern, Beschriften und Suchen über Nachrichten hinweg: Filtere nach Typ, Ursprung oder benutzerdefinierten Labels und suche nach früheren Ausgaben.
  • Archiv- und Löschsteuerung: Lösche den Bildschirm und archiviere Nachrichten für spätere Referenz, z. B. beim Vergleichen von Ausgaben oder bei schwer reproduzierbaren Problemen.
  • Remote-Debugging über SSH: Verbinde dich per SSH mit Servern, um Debug-Ausgaben aus Remote-Code in Ray zu streamen.
  • Springen zum IDE: Springe von gedumpten Ausgaben zurück zur relevanten Stelle in deinem Editor (mit Unterstützung für viele IDEs, wie auf der Website angegeben).
  • Gleiche Debug-Syntax über Sprachen/Frameworks hinweg: Die Website beschreibt den Einsatz desselben dump-ähnlichen Ansatzes über Sprachen und Frameworks.
  • Ray 3.0 Ausführungstools für PHP/Laravel: Enthält Pausieren & Messen der Ausführung, um PHP/Laravel-Code zu pausieren und Zeit zwischen Aufrufen zu messen.
  • Automatischer Empfang von Laufzeitausgaben (Ray 3.0): Die Website erwähnt den automatischen Empfang von Ausgaben (z. B. Queries, Jobs, Exceptions) ohne explizite Aufrufe im Code.
  • Erweiterbarkeit und Anpassung: Ändere Themes, erweitere Ray mit Makros und erstelle eigene Clients für das Senden von Daten aus noch nicht unterstützten Sprachen/Frameworks.
  • KI-Funktionen (Ray 3.0): Interagiere direkt in Ray mit KI-Ausgaben, inklusive KI-generierter HTML-Komponenten/Prototypen und strukturierter Erklärungen für Mermaid- & ERD-Diagramme via integriertem Viewer.
  • MCP-Server für KI-Agenten: Die Website gibt an, dass ein MCP-Server KI-Agenten Zugriff auf Fenster/Tools ermöglicht, damit sie Inhalte lesen, generieren und ausgeben können.

So nutzt du Ray

  1. Lade Ray herunter und kaufe bei Bedarf eine Lizenz (die Website zeigt $49 USD und erwähnt 1-Jahres-Lizenzen über Spatie).
  2. Sende Debug-Ausgaben an Ray mit der ray(...)-Syntax von der Website (Beispiele umfassen Beschriftungen, Tabellen, Farben und Filtern nach Aufruf-Attributen).
  3. Inspiziere und manage Nachrichten in Ray: Verwende Suche und Filter, um Ergebnisse einzugrenzen, und archiviere Nachrichten für spätere Vergleiche.
  4. (Optional) Richte Remote-Debugging ein: Verbinde dich per SSH mit einem Server, damit Ray Debug-Ausgaben aus Remote-Ausführungen streamt.
  5. (Optional) Nutze IDE-Navigation und Ausführungstools: Springe von Ray-Ausgaben zur Quellstelle und verwende Pausieren & Messen für PHP/Laravel.

Anwendungsfälle

  • Komplexe Werte inspizieren, ohne die App zu überladen: Sende Strings, Arrays, Objekte und Tabellen an Ray (mit Labels und Formatierung), um den Zustand in der Entwicklung zu verstehen, ohne rohe Konsolenausgaben.
  • Spezifische Requests oder Codepfade mit Filtern debuggen: Füge ray(...)-Aufrufen Farben/Labels hinzu, dann filtere in Ray nach Typ/Ursprung/Label, um relevante Nachrichten zu isolieren.
  • Ausgaben über Versuche hinweg vergleichen: Archiviere Nachrichten vor/nach Code-Änderungen, um frühere Ausgaben bei sporadischen Problemen zu prüfen.
  • Remote-Server-Debugging über SSH: Streame Debug-Ausgaben aus auf Remote-Servern laufendem Code in Ray, um Ergebnisse ohne manuelles Kopieren von Logs zu inspizieren.
  • PHP/Laravel-Performance- und Ablauf-Debugging: Pausiere Ausführung und messe Zeit zwischen Aufrufen, plus automatischer Empfang bestimmter Laufzeitausgaben (Queries, Jobs, Exceptions) wie für Ray 3.0 beschrieben.
  • Datenbankdiagramme und Schema-Erklärungen via KI: Nutze Ray 3.0, um KI Datenbankschemata erklären zu lassen und strukturierte Ausgaben in Mermaid- oder ERD-Format anzusehen.

FAQ

  • Ist Ray nur für browserbasiertes Debugging? Nein. Die Website beschreibt Ray als dedizierte Desktop-App, die Debug-Ausgaben außerhalb der App-Runtime organisiert hält.

  • Welche Ausgabeformate unterstützt Ray? Die Website gibt an, dass Ray empfangene Ausgaben (z. B. Strings, Arrays, Objekte) formatiert und Tabellen rendern kann; es wird auch das Dumpen von Queries, E-Mails, Events und Stack Traces erwähnt.

  • Kann Ray Code auf einem Remote-Server debuggen? Ja. Die Website beschreibt die Verbindung über SSH und das Streamen von Debug-Ausgaben zu Ray.

  • Ersetzt Ray dd() oder andere Debugger? Die Seite sagt, Ray ersetzt weder dd noch xdebug; es wird als drittes Tool beschrieben, das die Lücke zwischen schnellem Dumping und strukturierten Debugging-Workflows schließt.

  • Was ist neu in Ray 3.0? Die Seite hebt Pause & Measure für Ausführung, AI-Interaktionen (inkl. HTML-Komponenten und Mermaid/ERD-Viewer) sowie einen MCP-Server für AI-Agents hervor.

Alternativen

  • In-Browser-Logging und Console-Ausgabe (z. B. console.log, Browser-DevTools): Nützlich für schnelle Checks, aber Ergebnisse sind an die Browser-Umgebung gebunden und nicht in einer dedizierten, durchsuchbaren Desktop-Timeline dargestellt.
  • „Dump“-Helfer im App-Framework (z. B. dd()-Style-Debugging): Schnell und direkt, aber typischerweise bleibt die Ausgabe in der App/Browser-Antwort, statt in einer separaten Desktop-App mit Filterung/Suche und Archivierung.
  • Remote-Logging/Observability-Tools: Alternativen zum Sammeln von Logs aus Remote-Umgebungen, die sich meist auf Log-Aggregation und Monitoring konzentrieren statt auf den strukturierten, nachrichtenbasierten Inspektions-Workflow wie bei Ray beschrieben.
  • Terminalbasierte REPL/Debugging-Tools: Können Werte in der Entwicklung inspizieren, bieten aber möglicherweise nicht dieselbe organisierte Desktop-UI, Filterung und IDE-Jump-Workflow wie auf der Ray-Website referenziert.
Ray | UStack