피드로 돌아가기
I made a sitemap generator for mdBook. It was my first time releasing a crate!
Dev.toDev.to
Backend

Rust 기반 mdBook Sitemap 자동 생성 Backend 구현

I made a sitemap generator for mdBook. It was my first time releasing a crate!

Sonneko2026년 6월 14일3beginner

Context

mdBook의 기본 기능 내 Sitemap 생성 미지원으로 인한 SEO 최적화 한계 발생. 기존 오픈소스 도구들의 최신 버전 호환성 결여 및 Go 언어 기반의 설치 복잡성으로 인한 Rust 네이티브 구현 필요성 증대.

Technical Solution

  • mdBook Backend 아키텍처를 채택하여 mdbook build 실행 시 자동 생성되는 파이프라인 구축
  • stdin을 통해 전달되는 mdBook JSON 데이터를 파싱하여 sitemap.xml로 변환하는 데이터 흐름 설계
  • LLM 생성 코드의 JSON 포맷 불일치 문제를 해결하기 위한 정밀한 데이터 스키마 수정
  • Tester trait 정의를 통한 가상 파일 시스템 구축 및 통합 테스트 자동화 구조 설계
  • book.toml 설정을 통한 base-url, change-freq, priority 등 사용자 정의 옵션 제공

- 외부 도구 도입 전 현재 사용 중인 프레임워크 버전과의 호환성 검증 - LLM 생성 코드의 경우 유닛 테스트 외에 실제 런타임 환경을 모사한 Integration Test 필수 수행 - 반복적인 테스트 시나리오를 위해 Trait 기반의 테스트 프레임워크 설계 고려

원문 읽기