Rust로 작성된 정적 사이트 생성기(SSG) Sukr는 제로 JS(Zero-JS)를 지향하며, 빌드 타임에 모든 처리를 수행함
Tree-sitter 기반 구문 강조, MathML을 활용한 LaTeX 렌더링, SVG 다이어그램 지원 등 다양한 기능 제공
기존 SSG의 클라이언트 사이드 자바스크립트(Client-Side JavaScript) 의존성 문제를 해결하고, 성능 향상에 기여
Zola, Hugo 등 기존 SSG와 비교하여, 기능 구현 방식 및 성능 측면에서 차별점을 가짐
Sukr는 인터셉터 파이프라인(Interceptor Pipeline) 아키텍처를 활용하여 빌드 타임에 모든 콘텐츠를 처리한다. 특히, Tree-sitter를 사용하여 구문 강조를 구현함으로써, 정규 표현식 기반 방식의 한계를 극복하고, 다양한 언어의 구문 분석을 지원한다. 또한, KaTeX를 통해 LaTeX 수식을 MathML로 변환하여, 클라이언트 측 자바스크립트 의존성을 제거하고, 페이지 로딩 속도를 향상시킨다.
Sukr의 핵심 목표는 제로 JS(Zero-JS) 구현이다. 이를 위해, Mermaid를 사용하여 다이어그램을 빌드 타임에 SVG로 변환하고, LaTeX 수식을 MathML로 렌더링한다. 이러한 접근 방식은 클라이언트 측에서 자바스크립트 실행 없이 풍부한 콘텐츠를 제공하며, 를 개선한다. 결과적으로, 사용자 경험을 향상시키고, 검색 엔진 최적화(SEO)에도 긍정적인 영향을 미친다.
Sukr는 Zola, Hugo와 같은 기존 SSG와 비교하여, 기능 구현 방식에서 차별점을 보인다. 특히, Sukr는 Tree-sitter 기반 구문 강조, MathML을 활용한 LaTeX 렌더링, SVG 다이어그램 지원 등, 클라이언트 측 자바스크립트 없이 구현하기 어려운 기능을 제공한다. 하지만, 기존 SSG에 비해 생태계(Ecosystem) 및 테마 지원(Theme Support) 측면에서는 아직 부족하다는 평가도 존재한다.
커뮤니티에서는 Sukr의 제로 JS(Zero-JS) 접근 방식과 빌드 타임 렌더링에 대한 긍정적인 평가가 주를 이룬다. 특히, 페이지 로딩 속도(Page Loading Speed) 향상과 SEO 최적화(SEO Optimization)에 대한 기대가 높다. 하지만, 일부 사용자들은 플러그인 지원(Plugin Support) 및 템플릿 유연성(Template Flexibility) 부족을 지적하며, 향후 개선을 요구하고 있다.