Icons 소개: Ruby 앱에 원하는 아이콘 라이브러리를 추가하세요

발행: (2026년 2월 13일 오전 02:15 GMT+9)
3 분 소요
원문: Dev.to

Source: Dev.to

Introduction

거의 2년 전, Rails Icons를 발표했습니다. 그 글을 쓸 때 “아이콘을 쓰지 않는 앱은 없다”는 생각으로 시작했었는데, 오늘도 여전히 사실입니다.

저는 여전히 모든 SaaS 앱에 Rails를 사용하지만, 만약 여러분이 그렇지 않다면 어떨까요? Hanami, Rodauth, 혹은 Padrino 같은 다른 멋진 Ruby 프레임워크를 사용한다면요? 혹은 Perron(Rails 기반 SSG) 대신 Jekyll, Middleman, Bridgetown 등을 사용한다면요?

작은 수십 개의 아이콘 라이브러리 중 어느 것이든 SVG 아이콘을 우아하게 추가하는 방법을 여러분의 앱이나 사이트에서 사용할 수 없습니다. 안타깝죠! 😞

그래서 약 21만 다운로드 이후, Rails Icons의 핵심(Ruby) 부분을 별도의 gem인 Icons로 분리했습니다. ⭐
이제 Rails Icons의 핵심 기능은 Icons gem에 의존하고, Rails‑specific 부분(헬퍼와 제너레이터)만 Rails Icons gem에 남아 있습니다. Rails Icons 사용 방식은 그대로 유지됩니다.

이 새로운 구조를 통해 다음 중 하나를 선택할 수 있습니다:

  • Icons를 기반으로 레이어(예: Rails Icons)를 만들어 gem으로 패키징하거나
  • Icons를 직접 어떤 Ruby 앱에서도 사용하기

Usage

# Sync any of the supported libraries from their respective (GitHub) repository
Icons::Sync.new("lucide").now
# Render an icon
icon = Icons::Icon.new(
  name: "check",
  library: "lucide",
  variant: "outline",
  arguments: { class: "text-gray-500" }
)
svg = icon.svg

프레임워크나 SSG(아직도 Perron을 사용하지 않으신다면 😅)를 위해 Icons gem을 둘러싼 레이어를 만들고 싶다면 언제든지 연락 주세요. 기꺼이 도와드리겠습니다.

Icons gem의 소스는 GitHub에서 확인할 수 있습니다. ⭐

0 조회
Back to Blog

관련 글

더 보기 »

TIL: 템플릿 엄격 로컬 (TSL)

Template Strict Locals TSL 며칠 전 나는 Chris Oliver의 “Powerful Rails Features You Might Not Know” 발표를 검토하고 있었다. 많은 유용한 팁 중에 d...

[Talk::Overflow #23] 작은 ruby #{conf} 2025

tiny ruby {conf} 2025는 핀란드 헬싱키에서 열린 단일 트랙 Ruby 컨퍼런스였습니다. 6개의 강연, 하루 동안, 불필요한 내용 없이 진행되었습니다. Ruby 컨퍼런스는 종종 “Rails 컨퍼런스”와 혼동되곤 합니다.