Ray
Ray ist eine Desktop-App, die Debug-Ausgaben aus deinem Code organisiert. Werte inspizieren, filtern und archivieren – ohne dein App-Chaos.
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
- Lade Ray herunter und kaufe bei Bedarf eine Lizenz (die Website zeigt $49 USD und erwähnt 1-Jahres-Lizenzen über Spatie).
- Sende Debug-Ausgaben an Ray mit der
ray(...)-Syntax von der Website (Beispiele umfassen Beschriftungen, Tabellen, Farben und Filtern nach Aufruf-Attributen). - Inspiziere und manage Nachrichten in Ray: Verwende Suche und Filter, um Ergebnisse einzugrenzen, und archiviere Nachrichten für spätere Vergleiche.
- (Optional) Richte Remote-Debugging ein: Verbinde dich per SSH mit einem Server, damit Ray Debug-Ausgaben aus Remote-Ausführungen streamt.
- (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.
Alternativen
OpenFlags
OpenFlags ist ein Open-Source, self-hosted Feature-Flag-System für progressive Delivery: lokale Evaluation in App-SDKs und ein simples Control-Plane für gezielte Rollouts.
Rectify
Rectify ist eine All-in-One-Operations-Plattform für SaaS: Monitoring, Analytics, Support, Roadmaps, Changelogs und Agent-Management in einer visuellen Workspace – steuerbar per Konversation.
PingPulse
PingPulse überwacht AI-Agent-Workflows mit Echtzeit-Übergabe-Tracking, Workflow-Visualisierung und konfigurierbaren Alerts für Stalls und Fehler in Produktion.
KIT.domains
KIT.domains automatisiert Domain Monitoring und SSL-Tracking: Warnungen bei Domain-Ablauf und DNS-Änderungen, zentrale Übersicht im Dashboard & Renewal-Kalender.
Sleek Analytics
Leichtgewertige, datenschutzfreundliche Analytik mit Echtzeit-Visitor-Tracking: Woher Besucher kommen, was sie ansehen und wie lange sie bleiben.
Falconer
Falconer ist eine selbstaktualisierende Wissensplattform für schnelle Teams: interne Doku und Code-Context schreiben, teilen und gezielt finden – an einem Ort.