Herb 생태계는 CLI, 언어 서버, 코드 포매터, 린터 등 광범위한 개발자 도구를 포함하며, 이들은 모두 Herb Parser가 생성하는 구문 트리를 활용하여 일관되고 정확한 경험을 제공합니다. 특히 Herb Language Server는 VS Code 등 주요 에디터에 통합되어 실시간 진단 및 피드백으로 템플릿 오류를 방지합니다. Herb Formatter는 HTML+ERB 파일에 대한 자동 포맷팅을 제공하며, Herb Linter는 구성 가능한 규칙으로 정적 분석을 수행하여 모범 사례를 적용하고 일반적인 실수를 식별합니다. Herb는 Ruby뿐만 아니라 Node.js, WebAssembly, 브라우저에서 직접 JavaScript를 통해서도 프로그래밍 방식으로 활용 가능하여 다양한 환경에서의 유연한 사용을 지원합니다. Hotwire, Stimulus 등 최신 웹 개발 도구의 부상으로 HTML 템플릿의 중요성이 커지면서, Herb는 언어 서버 및 AI 기반 워크플로우 시대에 맞는 정밀하고 신뢰할 수 있는 도구를 제공하여 기존 도구 격차를 해소합니다. Herb는 RubyGems를 통해 쉽게 설치 가능하며, bundle exec herb analyze [path]
와 같은 명령어로 프로젝트 내 HTML+ERB 파일을 분석하고 파싱 결과를 요약합니다. 다양한 유용한 명령어도 지원됩니다.
Herb: HTML+ERB 개발 도구 생태계
Getting Started | Herb
작성자
Ruby Weekly
발행일
2025년 08월 05일
핵심 요약
- 1 Herb는 HTML+ERB 파일 작업을 간소화하고 향상시키기 위해 개발된 개발자 도구 생태계입니다.
- 2 핵심은 C로 작성된 빠르고 정확한 HTML 인식 ERB 파서인 Herb Parser입니다.
- 3 Herb는 언어 서버, 포매터, 린터 등 다양한 도구를 제공하며, Ruby 및 JavaScript 환경에서 프로그래밍 방식으로 사용 가능합니다.
도입
Herb는 HTML+ERB(.html.erb) 파일 작업을 위해 특별히 고안된 포괄적인 개발자 도구 생태계입니다. 이 프로젝트의 핵심 목표는 정밀하고 정확한 도구를 통해 HTML+ERB 템플릿 작업 경험을 혁신하고 단순화하는 것입니다. Herb의 기반은 C 언어로 개발된 빠르고 이식성이 뛰어나며 HTML을 인식하는 Herb Parser입니다. 이 파서는 상세하고 정확한 구문 트리를 생성하며, 이는 신뢰할 수 있는 코드 분석, 변환, 그리고 다양한 개발자 도구의 핵심 기반을 형성합니다. 기존 HTML+ERB 템플릿 작업 환경에서 부족했던 정밀하고 안정적인 도구 지원의 공백을 메우기 위해 Herb가 탄생했습니다.
결론
Herb는 HTML+ERB 도구에 대한 혁신적인 접근 방식을 제시하며, 기존 생태계의 여러 도구에서 영감을 얻고 발전했습니다. 가장 큰 차별점은 HTML과 ERB를 단순히 내장된 요소로 취급하는 대신, 처음부터 HTML을 인식하여 두 언어를 모두 일급 시민으로 이해하는 통합 파싱 접근 방식을 제공한다는 점입니다. 이 프로젝트는 MIT 라이선스 하에 오픈 소스로 공개되어 있으며, 개발 커뮤니티의 기여를 환영합니다. Herb는 2025년 4월 RubyKaigi 2025에서 처음 소개되었으며, HTML+ERB 개발 환경에 필수적인 도구로 자리매김하고 있습니다.