지난 글들

752개의 글이 있습니다

Rails 애플리케이션에 llms.txt 파일 추가하기

Llms.txt file in Rails applications - Avo

  • llms.txt는 대규모 언어 모델(LLM)이 웹사이트 콘텐츠를 효율적으로 이해하도록 돕는 Markdown 형식의 제안된 표준입니다.
  • 이 파일을 Rails 애플리케이션에 추가하여 LLM의 컨텍스트 이해도를 높이고 웹사이트의 검색 가시성을 향상시킬 수 있습니다.
  • llms.txt 구현은 LLM 기반 검색 시대에 웹사이트 정보 전달 방식을 최적화하고 경쟁 우위를 확보하는 데 기여합니다.
The Awesome Ruby 2025년 06월 23일

Turbo와 함께 테이블 작동시키기

Making Tables Work with Turbo | Guillermo Aguirre

  • Turbo를 사용하여 동적 테이블을 구현할 때, `turbo_frame_tag`가 잘못된 HTML 구조를 생성하여 행 추가 및 인플레이스 편집 기능이 오작동할 수 있습니다.
  • 테이블의 `<tbody>` 또는 개별 `<tr>` 요소에 `id`를 직접 할당하여 `turbo_frame_tag` 사용을 피함으로써 렌더링 문제를 해결할 수 있습니다.
  • 인플레이스 편집 시 폼 요소가 `<tr>` 내부에 올바르게 렌더링되지 않는 문제를 해결하기 위해 HTML5 원격 폼 기능과 `form` 속성을 활용해야 합니다.
Hotwire Weekly 2025년 06월 23일

Rails API 요청 버전 관리

Versioning API requests | Petr Hlavicka

  • 본 문서는 Rails 애플리케이션에서 API 요청을 효과적으로 버전 관리하는 방법에 대해 다루며, 특히 기존 클라이언트에 영향을 주지 않으면서 변경 사항을 처리하는 데 중점을 둡니다.
  • 저자가 개발한 'verquest'라는 새로운 Ruby Gem을 소개하며, 이 Gem이 OpenAPI 지원, DRY 원칙 준수, 내부 구현 숨기기 등의 요구사항을 어떻게 충족하는지 설명합니다.
  • verquest Gem은 JSON 스키마를 이용한 요청 유효성 검사 및 내부 구조 매핑 기능을 제공하며, 버전 상속을 통해 파괴적인 변경 사항을 효율적으로 관리할 수 있도록 돕습니다.
The Awesome Ruby 2025년 06월 23일

Claude-Swarm을 활용한 Ruby 프로젝트 업그레이드

Using Claude-Swarm to Upgrade Ruby Projects – code.dblock.org | tech blog

  • claude-swarm은 여러 Claude Code 인스턴스를 조율하여 협업 AI 개발 팀을 구성하는 도구입니다.
  • 이 도구를 사용하여 오래된 Ruby 프로젝트의 버전을 자동으로 식별하고 최신 버전으로 업그레이드하는 과정을 시연합니다.
  • AI 에이전트가 Ruby 프로젝트 탐색, 버전 식별, 업그레이드 및 `bundle install` 확인까지 자동화하여 개발 효율성을 높입니다.
jeff 2025년 06월 21일

Ruby에서 관용적인 Spaceship 연산자(&lt;=&gt;) 구현 비교 및 최적화

Comparing Idiomatic Spaceships in Ruby - hartley mcguire

  • Ruby 클래스에서 객체 비교를 위해 `Comparable` 모듈과 `&lt;=&gt;` (spaceship) 연산자를 구현합니다.
  • 일반적인 `Array#&lt;=&gt;` 방식은 간결하지만 불필요한 계산과 메모리 할당 문제를 야기할 수 있습니다.
  • `Numeric#nonzero?`를 활용한 관용적인 `&lt;=&gt;` 구현은 효율적이고 간결하며, 지연 평가를 가능하게 하여 복잡한 비교 로직에 특히 유용합니다.
The Awesome Ruby 2025년 06월 21일

Herb 언어 서버 및 Visual Studio Code 확장 출시: HTML+ERB 개발 경험 혁신

Herb Language Server and Visual Studio Code Extension | Marco Roth

  • Herb 언어 서버와 Visual Studio Code 확장이 출시되어 HTML+ERB 개발 환경에 실시간 진단 및 피드백 기능을 제공합니다.
  • HTML+ERB 파일의 구조를 깊이 이해하는 Herb는 Ruby 개발자에게 현대적인 프런트엔드 도구와 유사한 개발 경험을 제공하여 생산성을 향상시킵니다.
  • 표준 LSP를 따르며, 향후 자동 포맷팅, 심볼 탐색, Rails 통합 등 더 많은 기능이 추가될 예정이며, 궁극적으로 Ruby LSP에 통합되는 것을 목표로 합니다.
Hotwire Weekly 2025년 06월 20일

OpalStimulus 소개: Ruby로 Stimulus 컨트롤러 작성하기

Introducing OpalStimulus! 🎉 - DEV Community

  • OpalStimulus는 Stimulusjs 컨트롤러를 JavaScript 대신 Ruby로 작성할 수 있게 해주는 Opal 래퍼입니다.
  • Rails 설치 관리자를 제공하여 Ruby 개발자가 Stimulus를 쉽게 도입하고 활용할 수 있도록 지원합니다.
  • 현재 개발 중인 프로젝트이지만 기능적으로 작동하며, 커뮤니티의 기여 및 사용을 독려하고 있습니다.
Hotwire Weekly 2025년 06월 19일

뷰포트 이탈 시 비디오 자동 일시 정지 기능 구현

Auto-pause Video Player with Stimulus | Rails Designer

  • Stimulus와 Intersection Observer를 활용하여 뷰포트 이탈 시 비디오를 자동으로 일시 정지하고, 뷰포트 진입 시 재생을 재개하는 기능을 구현합니다.
  • 비디오의 가시성 상태를 감지하여 재생 여부를 기억하고, HTML5 비디오 API의 `play()` 메서드 Promise 반환 특성을 고려한 안정적인 재생 로직을 포함합니다.
  • 프라이빗 메서드, 배열 비구조화, 옵셔널 체이닝 등 최신 JavaScript 기능을 사용하여 깔끔하고 유지보수 가능한 코드를 작성합니다.
Hotwire Weekly 2025년 06월 19일

마지막 RailsConf 키노트 패널과 Ruby/Rails 커뮤니티의 미래

Ruby Talks w/ Kinsey Durham Grace About Working on Github's Copilot, AI, & All-Star RailsConf Panel

  • 마지막 RailsConf의 키노트 패널은 RailsConf의 과거, 현재, 미래를 아우르는 다양한 분야의 Ruby/Rails 커뮤니티 리더들로 구성되며, 청중의 질문을 통해 커뮤니티와의 대화를 지향합니다.
  • GitHub의 선임 엔지니어인 Kenzie Durham Grace는 Copilot 확장성 팀에서 Padawan과 같은 AI 도구를 개발하며, Rails 애플리케이션의 확장성(GitHub의 일일 20억 요청 처리)과 윤리적 AI의 중요성을 강조합니다.
  • Kenzie는 컴퓨터 공학 비전공자로서 RailsBridge 워크숍을 통해 Ruby/Rails 커뮤니티에 입문했으며, 비전통적 배경을 가진 개발자들을 위한 포용적인 커뮤니티의 중요성을 역설합니다.
Ruby Central 2025년 06월 19일

Rails 8, Hotwire, Docker, Dev Container를 활용한 최신 웹 애플리케이션 개발 강좌

Master Rails 8 Turbo + Devcontainers: Complete Course For Beginners

  • Docker와 Dev Container를 활용하여 Rails 8 기반의 웹 애플리케이션을 위한 일관되고 재현 가능한 개발 환경을 구축하는 방법을 학습합니다.
  • Hotwire의 핵심인 Turbo Drive, Turbo Frames, Turbo Streams를 사용하여 JavaScript 없이도 빠르고 동적인 웹 페이지 및 실시간 업데이트 기능을 구현하는 방법을 심층적으로 다룹니다.
  • 실제 To-Do 애플리케이션 프로젝트를 통해 개발 환경 설정부터 Bootstrap 스타일링, Turbo를 활용한 CRUD 및 실시간 방송 기능까지 단계별로 적용하는 실습 과정을 제공합니다.
Hotwire Weekly 2025년 06월 18일

Ruby on Rails용 Solid Queue 심층 분석

A Deep Dive into Solid Queue for Ruby on Rails | AppSignal Blog

  • Solid Queue는 Redis와 같은 외부 종속성 없이 데이터베이스를 활용하여 Ruby on Rails 백그라운드 작업을 처리하는 강력한 시스템입니다.
  • 이 시스템은 작업 스케줄링, 반복 작업, 동시성 제어 등 프로덕션 환경에 필수적인 고급 기능을 기본으로 제공합니다.
  • Solid Queue는 효율적인 데이터베이스 설계와 프로세스 조정을 통해 Rails 생태계에 기여하며, AppSignal과 같은 도구를 통해 손쉽게 모니터링할 수 있습니다.
The Awesome Ruby 2025년 06월 18일

50. 분노 퇴사 인내 이론

Herbicide (with Marco Roth) - Dead Code | Acast

  • AI 기반 해고 및 AI 버블에 대한 비판과 함께, Ruby 및 Rails가 개발자의 '분노 퇴사 인내'를 연장한다고 평가했습니다.
  • 공감적이고 빠른 코드 리뷰, 작은 PR의 중요성을 강조하며, '10배 개발자' 신화보다 문화와 협업이 더 중요하다고 역설했습니다.
  • DHH의 '경영진은 가장 바쁘지 않아야 한다'는 주장을 특권으로 비판하며, 휴식과 균형의 보편적 중요성을 주장했습니다.
Hotwire Weekly 2025년 06월 17일

Rails 프런트엔드 자산 관리 전략의 진화

Frontend Assets in Ruby on Rails Through the Years

  • Rails의 프런트엔드 자산 관리 방식은 시간이 지남에 따라 크게 변화했으며, 이는 레거시 앱 유지보수 시 혼란을 야기합니다.
  • Sprockets에서 Webpacker, 그리고 Rails 7의 Import Maps와 Rails 8의 Propshaft까지 다양한 전략이 등장하며 웹 환경 변화에 적응했습니다.
  • 프로젝트의 요구사항과 브라우저 지원 범위에 따라 jsbundling-rails 또는 importmap-rails 중 적절한 자산 관리 도구를 선택하는 것이 중요합니다.
The Awesome Ruby 2025년 06월 17일
  • Turbo Rails Gem에 통합 테스트 시 Turbo Frame의 존재 여부 및 속성 검증을 위한 `assert_turbo_frame` 및 `assert_no_turbo_frame` 헬퍼가 추가되었습니다.
  • 새로 추가된 테스트 헬퍼는 `id`, `loading`, `source`, `target`과 같은 Turbo Frame의 주요 속성을 검증하며, 내부 콘텐츠에 대한 추가 검사를 위한 블록을 지원합니다.
  • 헬퍼의 정확한 동작을 보장하기 위해 `Minitest::Assertion` 예외 발생 여부를 확인하는 테스트 케이스를 포함하여 개발 및 검증 과정이 상세히 시연되었습니다.
Hotwire Weekly 2025년 06월 16일

Rails CVE-2025-55193 및 CVE-2025-24293 분석

Rails CVE-2025-55193 and CVE-2025-24293 | Greg Molnar

  • 최근 공개된 Rails의 두 가지 주요 보안 취약점(CVE-2025-55193, CVE-2025-24293)에 대한 상세 분석 및 잠재적 악용 가능성을 다룹니다.
  • CVE-2025-55193은 Active Record 로깅 메커니즘의 ANSI 이스케이프 주입 취약점으로, 특정 터미널 환경에서 원격 코드 실행(RCE)으로 이어질 수 있습니다.
  • CVE-2025-24293은 Active Storage의 안전하지 않은 이미지 변환 문제로, `image_processing` gem과 `mini_magick` 사용 시 임의 파일 생성 및 다른 취약점과의 연계 가능성을 내포합니다.
Ruby Weekly 2025년 06월 16일