Ray
Ray è un’app desktop per organizzare l’output di debug del codice: ispeziona, filtra e archivia valori con `ray(...)` senza ingombrare l’app.
Cos'è Ray?
Ray è un'app desktop dedicata per organizzare e ispezionare l'output di debug al di fuori del runtime della tua applicazione. Ti permette di inviare valori (stringhe, array, oggetti e altro) usando una sintassi coerente ray(...), quindi visualizzarli, filtrarli e rivederli in Ray.
Il suo scopo principale è mantenere l'output di debug leggibile e strutturato, riducendo la necessità di ingombrare la tua app con codice di logging aggiuntivo. Ray supporta anche il debug remoto via SSH e include strumenti per mettere in pausa e misurare l'esecuzione in contesti PHP/Laravel.
Caratteristiche Principali
- Vista desktop organizzata per output di debug: Mantiene l'output di debug in un'app dedicata per ispezionare i risultati senza dipendere dalle console del browser.
- Rendering formattato per molti tipi di dati: Invia valori come stringhe, array, oggetti e tabelle e li rende ordinati per l'ispezione.
- Filtro, etichettatura e ricerca tra i messaggi: Filtra per tipo, origine o etichette personalizzate e usa la ricerca per trovare output precedenti.
- Controlli per archiviazione e svuotamento: Svuota lo schermo e archivia i messaggi per riferimenti futuri quando confronti output o indaghi su problemi difficili da riprodurre.
- Debug remoto via SSH: Connettiti ai server via SSH per trasmettere l'output di debug da codice remoto in Ray.
- Salto all'IDE: Salta dall'output dumpato alla posizione rilevante nel tuo editor (con supporto per molti IDE, come indicato sul sito).
- Sintassi di debug cross-linguaggio/framework: Il sito descrive l'uso dello stesso approccio
dump-style tra linguaggi e framework. - Strumenti di esecuzione Ray 3.0 per PHP/Laravel: Include pausa e misurazione dell'esecuzione per mettere in pausa il codice PHP/Laravel e misurare il tempo tra le chiamate.
- Ricezione automatica di output runtime (Ray 3.0): Il sito menziona la ricezione automatica di output (es. query, job, eccezioni) senza aggiungere chiamate esplicite nel codice.
- Estensibilità e personalizzazione: Cambia temi, estende Ray con macro e crea il tuo client per inviare dati da linguaggi/framework non ancora supportati.
- Funzionalità AI (Ray 3.0): Interagisci con output AI direttamente in Ray, inclusi componenti/prototipi HTML generati da AI e spiegazioni strutturate per diagrammi Mermaid & ERD tramite un visualizzatore integrato.
- Server MCP per agenti AI: Il sito indica che un server MCP permette agli agenti AI di accedere a finestre/strumenti per leggere, generare e outputtare contenuti.
Come Usare Ray
- Scarica Ray e acquista una licenza se necessario (il sito mostra un prezzo di $49 USD e menziona licenze annuali gestite tramite Spatie).
- Invia output di debug a Ray usando la sintassi
ray(...)mostrata sul sito (esempi includono etichettatura, tabelle, applicazione di colori e filtraggio per attributi di chiamata). - Ispeziona e gestisci i messaggi in Ray: usa ricerca e filtri per restringere i risultati, e archivia i messaggi quando vuoi confrontare output successivi.
- (Opzionale) Configura il debug remoto: connettiti a un server via SSH così Ray può trasmettere l'output di debug dall'esecuzione remota.
- (Opzionale) Usa navigazione IDE e strumenti di esecuzione: salta alla posizione sorgente dall'output di Ray e usa gli strumenti di pausa e misurazione per PHP/Laravel.
Casi d'Uso
- Ispezione di valori complessi senza ingombrare l'app: Invia stringhe, array, oggetti e tabelle a Ray (con etichette e formattazione) per comprendere lo stato durante lo sviluppo senza affidarti a output console grezzi.
- Debug di richieste o percorsi di codice specifici con filtri: Applica colori/etichette alle chiamate
ray(...), poi filtra per tipo/origine/etichetta in Ray per isolare i messaggi rilevanti. - Confronto di output tra tentativi: Archivia messaggi prima/dopo cambiamenti al codice per rivedere output precedenti durante il troubleshooting di problemi intermittenti.
- Debug server remoto via SSH: Trasmetti output di debug da codice in esecuzione su server remoti in Ray, per ispezionare i risultati senza copiare manualmente i log.
- Debug di performance e flusso PHP/Laravel: Metti in pausa l'esecuzione e misura il tempo tra chiamate, più ricevi output runtime specifici automaticamente (query, job, eccezioni) come descritto per Ray 3.0.
- Lavoro con diagrammi database e spiegazioni schema via AI: Usa le funzionalità Ray 3.0 per far spiegare schemi database dall'AI e visualizza output strutturato in formato Mermaid o ERD.
FAQ
-
Ray è solo per il debug basato su browser? No. Il sito descrive Ray come un’app desktop dedicata che mantiene l’output di debug organizzato al di fuori del runtime della tua app.
-
Cosa supporta Ray per la formattazione dell’output? Il sito afferma che Ray formatta l’output ricevuto (es. stringhe, array, oggetti) e può renderizzare tabelle; menziona anche il dump di query, email, eventi e stack trace.
-
Ray può fare il debug di codice in esecuzione su un server remoto? Sì. Il sito descrive la connessione via SSH e lo streaming dell’output di debug verso Ray.
-
Ray sostituisce dd() o altri debugger? La pagina dice che Ray non sostituisce dd o xdebug; è descritto come uno strumento terzo per colmare il gap tra dump rapidi e workflow di debug più strutturati.
-
Cosa c’è di nuovo in Ray 3.0? La pagina evidenzia la pausa e misurazione dell’esecuzione, interazioni AI (inclusi componenti HTML e visualizzatori Mermaid/ERD), e un server MCP per agenti AI.
Alternative
- Logging in-browser e output console (es.
console.log, devtools browser): Utili per controlli rapidi, ma i risultati sono vincolati all’ambiente browser e non presentati in una timeline desktop dedicata e ricercabile. - Helper “dump” nel framework dell’app (es. debug stile
dd()): Veloci e diretti, ma tipicamente mantengono l’output all’interno della risposta app/browser anziché in un’app desktop separata con filtraggio/ricerca e archiviazione. - Strumenti di logging/observability remoti: Alternative per raccogliere log da ambienti remoti, tipicamente focalizzati su aggregazione e monitoraggio log anziché sul workflow di ispezione strutturato e basato su messaggi descritto per Ray.
- Strumenti REPL/debugging basati su terminale: Possono ispezionare valori durante lo sviluppo, ma potrebbero non offrire la stessa UI desktop organizzata, filtraggio e workflow di salto IDE menzionati sul sito Ray.
Alternative
OpenFlags
OpenFlags è un sistema di feature flag open source self-hosted per progressive delivery: valuta localmente via SDK e gestisci i rollout con un control plane semplice.
Rectify
Rectify è una piattaforma operativa all-in-one per SaaS: monitoraggio, analytics, supporto, roadmap, changelog e gestione agenti in un’unica workspace visiva via conversazione.
PingPulse
PingPulse monitora i workflow degli agenti AI con tracking real-time dei passaggi, visualizzazione delle fasi e alert configurabili per fallimenti e stalli in produzione.
KIT.domains
KIT.domains automatizza monitoraggio domini e tracking SSL: avvisi su scadenze e modifiche DNS, dashboard condiviso e calendario rinnovi per team.
Sleek Analytics
Sleek Analytics: analytics leggere e privacy-friendly con tracking in tempo reale dei visitatori. Scopri da dove arrivano, cosa vedono e durata.
Falconer
Falconer è una piattaforma di conoscenza che si aggiorna da sola: scrivi, condividi e trova documentazione interna e contesto del codice in un unico posto.