Rails Turbo Stream을 활용한 폼 자동 저장 구현

Auto-saving Rails forms with Turbo Streams

  • Ruby on Rails에서 Turbo와 Stimulus를 사용하여 인라인 폼 자동 저장 기능을 구현하는 방법을 설명합니다.
  • Stimulus 컨트롤러가 특정 이벤트에 따라 폼 제출을 트리거하고, Rails 컨트롤러는 Turbo Stream으로 응답하여 UI를 업데이트합니다.
  • 이 접근 방식은 페이지 전환 없이 사용자에게 실시간 피드백을 제공하며 효율적인 자동 저장을 가능하게 합니다.
Unknown 2025년 06월 06일

Turbo Forms에 로딩 스피너 추가하기

Adding button loader to Turbo-powered forms

  • Turbo Forms 제출 시 사용자 경험 개선을 위해 제출 버튼에 로딩 스피너를 추가하는 방법을 설명합니다.
  • Stimulus 컨트롤러를 활용하여 버튼의 상태를 변경하고 시각적 피드백을 제공합니다.
  • 버튼 크기 유지, 비활성화 처리 등 구현 상세와 Rails에서의 적용 예시를 제시합니다.
Unknown 2025년 06월 06일

Rails Active Storage와 Cloudflare R2 연동 설정 가이드

Setting up Cloudflare R2 buckets for Active Storage

  • Rails Active Storage는 S3 호환 서비스와 연동 가능하며, Cloudflare R2도 지원합니다.
  • Cloudflare R2 버킷 생성, CORS 설정, API 토큰 발급 후 Rails `storage.yml`에 S3 서비스로 설정합니다.
  • 엔드포인트, 액세스 키, 시크릿 키, 버킷 이름을 환경 변수 등으로 관리하며 개발/운영 환경에 맞게 설정합니다.
Unknown 2025년 06월 06일

여러 사이트맵 관리를 위한 사이트맵 인덱스 생성

Combining multiple sitemaps with a sitemap index

  • 여러 개의 사이트맵을 효율적으로 관리하기 위해 사이트맵 인덱스를 생성하는 방법을 설명합니다.
  • 기존 사이트맵 파일은 그대로 유지하고, 새로운 인덱스 파일에 각 사이트맵의 위치를 등록합니다.
  • 사이트맵 인덱스는 검색 엔진이 웹사이트의 모든 페이지를 쉽게 찾고 색인하도록 돕습니다.
Unknown 2025년 06월 06일

Kamal 배포 환경에서 Ruby on Rails AI 모델 사전 다운로드 최적화

Predownloading embedding models in Rails with Kamal

  • Ruby on Rails에서 Informers/Transformers.rb gem을 사용할 때, AI 모델이 첫 사용 시 다운로드되어 프로덕션 배포(Kamal) 시 반복적인 다운로드 문제가 발생합니다.
  • 이 문제를 해결하기 위해 모델을 영구적인 볼륨에 사전 다운로드하고, gem이 해당 위치를 사용하도록 설정해야 합니다.
  • Kamal 볼륨 및 환경 변수 설정, 그리고 docker-entrypoint 스크립트 수정을 통해 모델 사전 로딩 프로세스를 자동화하여 배포 효율성을 높일 수 있습니다.
Unknown 2025년 06월 06일

Kamal에서 대화형 세션 실행하기

Running interactive sessions with Kamal

  • Kamal로 관리되는 서버의 특정 컨테이너에 대화형으로 접속하는 방법을 설명합니다.
  • `kamal server exec -i` 명령과 `docker exec -it` 명령을 조합하여 사용합니다.
  • 이 방법을 통해 배포된 컨테이너 환경 내에서 직접 명령을 실행하고 상호작용할 수 있습니다.
Unknown 2025년 06월 06일

Rails Turbo Stream 렌더링 후 JavaScript 실행하기

Running JavaScript after a Turbo Stream renders

  • Turbo Stream으로 DOM 변경 시 JavaScript 초기화 문제가 발생할 수 있습니다.
  • Hotwire 방식은 Stimulus 컨트롤러의 connect 메서드를 사용하는 것입니다.
  • 대안으로 turbo:after-stream-render 커스텀 이벤트를 구현하여 활용할 수 있습니다.
Unknown 2025년 06월 06일
  • Rails Action Text에 포함되었던 Trix 에디터가 `actiontext-tricks`라는 별도의 Gem으로 분리되었습니다.
  • 이는 Trix의 JavaScript 및 CSS 파일을 Rails 릴리스와 독립적으로 업데이트할 수 있게 하여 보안 업데이트 등에 유리합니다.
  • 기존 앱에서 사용하려면 Gemfile에 추가하고, vendored 파일 및 import map 설정을 조정해야 합니다.
Unknown 2025년 06월 04일

루비 개발자의 Elixir 여정: 얻은 교훈

My Journey from Ruby to Elixir: Lessons from a Developer - Erlang Solutions

  • 본 글은 루비 개발자가 복잡성 및 확장성 문제 해결을 위해 Elixir로 전환한 경험을 공유합니다.
  • 객체 지향에서 함수형으로의 사고방식 전환, BEAM 기반의 강력한 동시성 및 내결함성, Phoenix LiveView의 효율성을 핵심적으로 다룹니다.
  • Elixir는 대규모, 실시간, 고가용성 애플리케이션에 강점을 보이며, 루비 개발자에게 가치 있는 대안이 될 수 있음을 제시합니다.
stadia 2025년 06월 04일

Emacs에서 Sorbet-ls를 효율적으로 설정하기

Ruby: sane sorbet-ls setup in Emacs → Gosha Tcherednitchenko

  • Emacs lsp-mode 환경에서 Sorbet을 사용하는 프로젝트와 사용하지 않는 프로젝트를 함께 다룰 때 발생하는 sorbet-ls의 불필요한 자동 실행 문제를 해결하는 방법을 제시합니다.
  • 기존 sorbet-ls 클라이언트의 자동 실행을 비활성화하고, 현재 프로젝트가 Sorbet을 사용하는지 확인하는 Emacs Lisp 함수를 구현합니다.
  • 프로젝트별 Sorbet 사용 여부에 따라 선별적으로 활성화되는 새로운 LSP 클라이언트를 등록하여 효율적인 개발 환경을 구축합니다.
stadia 2025년 06월 04일

Ruby에서 Async 라이브러리를 활용한 동시 웹 크롤링 구현

Concurrent Web Crawling in Ruby with Async | Los Angeles AI Apps

  • 본 아티클은 Ruby의 Async 라이브러리를 사용하여 I/O 바운드 작업인 웹 크롤링을 효율적으로 수행하는 방법을 제시합니다.
  • 순차적 방식의 비효율성을 해결하기 위해 Fiber 기반의 비동기 처리를 도입하고, Semaphore 및 Barrier를 활용하여 동시성 제어와 안정성을 확보합니다.
  • Async::HTTP::Client를 통해 지속적인 연결을 관리하며 TLS 핸드셰이크 오버헤드를 줄이고 성능을 향상시키는 기법을 설명합니다.
stadia 2025년 06월 04일
  • RailsConf 2025는 20년 역사를 마무리하는 마지막 레일즈 공식 컨퍼런스입니다.
  • 레일즈와 커뮤니티의 유산을 기리며 다양한 기술 세션, 워크샵, 네트워킹 기회를 제공합니다.
  • 온라인 티켓은 2025년 7월 7일까지 판매되며, 레일즈 커뮤니티의 역사적인 순간에 참여할 마지막 기회입니다.
Unknown 2025년 06월 03일

루비/레일스 생태계 최신 소식 및 주요 업데이트 요약

EP. 09 - 💥 마지막 RailsConf, DHH, 새 Rails 기능, Sidekiq 업데이트까지! 이번 주 루비 뉴스 요약

  • RailsConf 2025가 DHH 참여와 함께 마지막 컨퍼런스로 개최되며 한 시대의 마무리를 알립니다.
  • Rails ActiveJob의 `continue_with` 기능 추가, Sidekiq 성능 개선, Action Text 에디터 업데이트 등 기술적 진보가 이어집니다.
  • Ruby 언어 핵심 개발자의 비전 공유와 개발자의 기술 서적 출판 성공 사례를 통해 커뮤니티의 활력을 확인했습니다.
Unknown 2025년 06월 03일

Ruby on Rails에서 AI를 활용한 문서 생성 자동화

Automating Document Generation with AI in Ruby on Rails – Ruby Stack News

  • 본 글은 Ruby on Rails 환경에서 AI를 활용하여 문서 생성 프로세스를 자동화하는 방법을 다룹니다.
  • 대화형 AI가 사용자 입력 기반으로 구조화된 콘텐츠(JSON)를 생성하고, 이를 다양한 문서 형식으로 변환하는 아키텍처를 제시합니다.
  • Ruby on Rails의 유연성과 다양한 젬을 활용하여 유지보수 및 확장이 용이한 자동화 파이프라인 구축이 가능함을 설명합니다.
stadia 2025년 06월 03일

Judge.me, Rails Foundation 핵심 회원사 합류

Judge.me joins the Rails Foundation as a new Core member

  • 제품 리뷰 플랫폼 Judge.me가 Rails Foundation의 새로운 핵심 회원사로 합류했습니다.
  • Judge.me는 창립부터 Ruby on Rails를 기반으로 성장하며 전 세계 수십만 전자상거래 상점을 지원하는 기업입니다.
  • 이번 합류는 Judge.me가 Rails 커뮤니티에 기여하고 프레임워크의 가치를 알리는 중요한 계기임을 나타냅니다.
Unknown 2025년 06월 03일