UStackUStack
Ray favicon

Ray

Ray는 언어와 프레임워크를 넘어 모든 디버그 출력을 깔끔하게 정리해 주는 전용 데스크톱 디버거로, 흐름을 끊지 않고 더 빠르게 디버깅할 수 있도록 도와줍니다.

Ray

Ray란 무엇인가요?

Ray이란 무엇인가요?

Ray은 코드에서 발생하는 디버깅 출력을 수집, 정리 및 시각화하기 위해 설계된 언어 및 프레임워크를 넘나드는 데스크톱 디버깅 동반자입니다. 애플리케이션이나 콘솔에 데이터를 직접 던져 넣는 대신, Ray는 문자열, 배열, 객체, 쿼리, 이메일, 이벤트 등 다양한 데이터를 전송하고 읽기 쉽고 탐색 가능한 형식으로 렌더링하는 중앙 집중형의 기능이 풍부한 환경을 제공합니다. Ray를 사용하면 PHP, Laravel, JavaScript 등의 디버깅 정보를 한 곳의 전용 앱 내에서 필터링, 검색, 보관 및 분석할 수 있습니다. 목표는 디버깅 경험을 빠르고 체계적으로 유지하면서도 데이터를 이해하고 조치할 수 있는 강력한 도구를 제공하는 것입니다.

Ray 3.0은 전통적인 디버깅과 AI 지원 워크플로우, HTML 컴포넌트 생성, 보다 풍부한 다이어그램 표현을 연결하는 향상 기능을 도입합니다. 이 제품은 언어 간 일관성, IDE 탐색용 인라인 도구, 원격 기능 및 유연한 데이터 시각화를 강조하며, 팀과 개인이 쉽게 도입할 수 있도록 설계되었습니다.

핵심 기능

  • 중앙 집중형 디버깅 화면: 모든 디버그 출력을 하나의 데스크톱 앱에서 수집하고 정리합니다. 터미널과 로그 전반에 흩어져 있지 않습니다.
  • 다국어 및 다중 프레임워크 지원: PHP, Laravel, JavaScript 등에서 작동하며, 일관된 구문과 워크플로를 제공합니다.
  • SSH를 통한 원격 디버깅: 원격 서버에 연결하고 디버그 출력을 Ray로 직접 스트리밍하여 로컬 코드 변경 없이 실시간 진단이 가능하게 합니다.
  • 메시지 보관 및 검색: 비교나 감사, 재현이 어려운 이슈 재현을 위해 중요한 출력을 저장합니다.
  • 실행 일시 중지 및 측정: 코드 경로를 일시 중지하고 호출 간 시간을 측정하여 추가 코드 없이 성능 병목을 정확히 찾아냅니다.
  • 덤프가 필요 없고 자동 출력: 쿼리, 작업, 예외 및 기타 데이터 소스에서 자동으로 출력을 받으므로 코드의 중복 코드를 줄일 수 있습니다.
  • IDE로 바로 이동: Ray에서 직접 관련 소스 위치를 열 수 있으며, 여러 IDE에서 빠른 컨텍스트 전환을 지원합니다.
  • 테마 및 확장성: 작업 흐름에 맞게 테마를 변경하고 매크로를 만들며, 미지원 환경을 위한 자체 클라이언트나 언어 바인딩으로 Ray를 확장하십시오.
  • HTML 컴포넌트 및 AI 기반 출력: Ray 내부에서 AI가 HTML 컴포넌트나 프로토타입을 생성하게 하고, 이를 직접 상호작용할 수 있습니다.
  • Mermaid 및 ERD 다이어그램: 내장 뷰어로 복잡한 데이터베이스 스키마를 설명하는 구조화된 다이어그램을 생성합니다.
  • MCP 서버 통합: AI 에이전트가 Windows 환경과 도구에 접근할 수 있도록 하여 고급 자동화 및 생성 작업을 돕습니다.
  • Ray 3.0의 신기능: AI가 생성하는 내용을 앱 안에서 확인하고 AI 출력에 상호작용하며 개선된 다이어그램 및 시각화 도구를 활용합니다.
  • 크로스 플랫폼 호환성: macOS, Windows, Linux에서 동일한 디버깅 경험을 제공합니다.
  • 문서 및 커뮤니티: Ray에 대한 포괄적 문서와 커뮤니티 주도 언어 및 프레임워크 지원 생태계를 제공합니다.

Ray 사용 방법

  1. Ray 얻기: 공식 사이트에서 Ray를 다운로드하고 설치합니다. 라이선스는 Spatie를 통해 관리되며, 표준 가격과 런치 세일 가격 옵션이 포함됩니다( Ray 3.0 기준, 체크아웃 시 가격 확인).
  2. 설치 및 초기화: 개발 머신에서 Ray 데스크톱 앱을 실행합니다. Ray가 실행 중이고 데이터를 받을 준비가 되어 있는지 확인합니다.
  3. 코드에서 디버그 데이터 전송: ray() 함수(또는 언어별 동등한 함수)를 사용해 문자열, 배열, 객체, 쿼리, 이메일, 이벤트 또는 검사하고 싶은 모든 데이터를 전송합니다. 필터링과 검색성을 높이려 출력에 레이블을 붙일 수 있습니다.
  4. 앱 내 렌더링 탐색: Ray는 데이터를 읽기 쉽고 구조화된 형식으로 렌더링합니다. 유형, 출처 또는 사용자 정의 레이블로 필터를 적용하고 검색 기능을 사용해 모든 메시지에서 원하는 항목을 찾으십시오.
  5. 필터링, 보관 및 정제: 출력에 색상이나 레이블을 추가하고, 이후 참조를 위해 메시지를 보관하며 실행을 일시정지/측정해 이슈를 고립시키십시오.
  6. IDE로 점프: 덤프된 파일에서 편집기의 관련 위치로 바로 이동합니다. Ray는 여러 IDE를 지원하여 빠른 탐색이 가능합니다.
  7. AI와 HTML 컴포넌트 활용: Ray의 AI 보조 기능으로 HTML 컴포넌트나 프로토타입을 생성하거나 Mermaid/ERD 다이어그램으로 복잡한 데이터를 설명합니다.
  8. 확장 및 커스터마이즈: Ray가 아직 지원하지 않는 언어나 프레임워크가 있다면 매크로나 커스텀 클라이언트를 통해 Ray를 확장하십시오.
  9. 필요 시 원격 배포: SSH를 통한 원격 디버깅 기능을 활용해 원격 서버에서 실행 중인 코드를 모니터링하고 디버깅합니다.
  10. 탐색 및 최적화: 일시정지, 타이밍, 필터링 도구를 사용해 성능 이슈를 격리하고 실행 간의 출력을 비교 분석하십시오.

활용 사례

  • PHP 및 Laravel 디버깅: PHP 및 Laravel 런타임 데이터를 Ray로 직접 출력하고 배열과 객체를 시각화하며 쿼리를 맥락 라벨링으로 검사합니다.
  • JavaScript 및 프런트엔드 디버깅: Node.js 또는 브라우저 기반 코드의 콘솔 유사 출력, API 응답 및 이벤트를 하나의 장소에서 수집합니다.
  • 원격 서버 디버깅: SSH를 통해 원격 서버에서 실행 중인 코드를 디버깅하고 Ray로 로그와 출력을 실시간 분석합니다.
  • AI 지원 개발: AI를 사용해 HTML 컴포넌트, 프로토타입 또는 복잡한 스키마에 대한 설명을 생성하고 Ray 내장 뷰어로 결과를 시각화합니다.
  • 데이터베이스 및 스키마 시각화: 데이터 흐름과 쿼리로 Mermaid 또는 ERD 다이어그램을 생성해 데이터베이스 관계를 더 잘 파악합니다.
  • 디버깅 워크플로우의 일관성: macOS, Windows, Linux 전반에 걸쳐 일관된 디버깅 경험을 유지하여 작업환경에 관계없이 팀이 정렬되도록 합니다.

자주 묻는 질문

  • 가격 및 라이선스 모델은 무엇인가요? Ray는 유료 데스크톱 라이선스를 제공합니다. 최신 릴리스 기준 가격은 체크아웃 시 확인되며, 런치 세일 옵션으로 할인가가 제공됩니다. 일반적으로 라이선스는 특정 기간(예: 1년) 동안 유효하며 공식 라이선스 시스템(Spatie)을 통해 관리됩니다. 무기한 라이선스도 옵션으로 언급되며 현재 조건에 따라 다를 수 있습니다. 주요 버전 전 구입 라이선스는 이전 조건 하에 여전히 유효할 수 있습니다.
  • 어떤 플랫폼을 지원하나요? Ray는 macOS, Windows, Linux에서 실행되며 주요 데스크톱 환경에서 일관된 디버깅 경험을 제공합니다.
  • 어떤 언어와 프레임워크를 지원하나요? Ray는 PHP, Laravel, JavaScript를 지원하며, 추가 언어는 언어 바인딩이나 커스텀 클라이언트를 통해 사용할 수 있습니다. 일관된 구문과 워크플로를 강조합니다.
  • 원격으로 디버깅하거나 서버에서 디버깅이 가능한가요? 예. Ray는 SSH를 통한 원격 디버깅을 지원하여 로컬 코드 변경 없이 원격 서버의 디버깅 데이터를 Ray에 스트리밍합니다.
  • 검색, 필터, 보관은 어떻게 작동하나요? 유형, 출처 또는 사용자 정의 레이블로 메시지를 필터링하고, 모든 메시지에서 항목을 찾기 위해 검색을 사용하며, 나중에 참조나 비교를 위해 중요한 출력을 보관합니다. 대량의 디버그 데이터를 효율적으로 관리하는 데 도움이 됩니다.
  • AI 통합 및 HTML 생성이 있나요? 네. Ray 3.0에서는 AI가 HTML 컴포넌트와 다이어그램을 생성하고, 앱 내에서 AI 출력에 연결할 수 있는 기능이 새롭게 제공됩니다. Mermaid 및 ERD 다이어그램 뷰어도 내장되어 있습니다.
  • 시작하려면 어떻게 하나요? 공식 사이트에서 Ray 데스크톱 앱을 다운로드하고 설치합니다. 언어 바인딩 문서를 확인하고 코드의 ray() 호출을 통해 데이터를 보내기 시작합니다. 필요하면 매크로 및 커스텀 클라이언트를 활용해 Ray를 확장할 수 있습니다.

추가 참고

Ray는 애플리케이션 내에서 디버그 출력을 외부로 분리시키면서도 정보에 쉽게 접근하고 검색 가능하게 만들어 개발 흐름을 유지하는 워크플로우를 강조합니다. 프로젝트와 팀의 규모에 맞춰 강력하고 확장 가능하며 크로스 플랫폼의 디버깅 환경을 제공하는 것이 목표입니다.

Ray | UStack