pile·
프론트엔드·vercel-blogVercel Blog·

Streamdown 1.6: LRU 캐시·레이지 로딩·커스텀 렌더러로 AI 스트리밍 마크다운 최적화

AI 스트리밍 마크다운 렌더링 라이브러리 Streamdown 1.6 이 출시됐다. memoization·LRU 캐싱·정규식 제거로 처리 속도를 높이고, React Suspense 레이지 로딩과 자체 마크다운 렌더러 도입으로 번들 크기를 줄였다. 정적 컨텐츠용 Static Rendering Mode 도 추가됐다.

핵심 포인트
  • memoization + LRU 캐싱 + 문자열 연산 최적화 + 정규식 패턴 제거로 처리 속도를 개선했다.
  • Code Blocks, Mermaid, Math 컴포넌트가 React Suspense 레이지 로딩으로 전환돼 필요할 때만 활성화된다.
  • React Markdown 의존성을 제거하고 자체 렌더러를 도입해 라이브러리 코어 footprint 를 줄이고 향후 최적화 경로를 직접 제어할 수 있게 됐다.
  • Static Rendering Mode 가 추가돼 블로그 포스트 등 정적 컨텐츠를 스트리밍 오버헤드 없이 처리할 수 있다.
상세 정리
  • 성능 최적화: memoization 으로 반복 연산을 캐싱하고 LRU 캐시로 메모리 효율을 확보했다. 문자열 처리 최적화와 정규식 패턴 제거로 처리 시간을 단축했다.
  • 레이지 로딩 적용: Code Blocks, Mermaid 다이어그램, Math 수식 컴포넌트가 React Suspense 를 활용해 해당 컨텐츠가 필요한 시점에만 로드된다.
  • 코드 하이라이팅 재설계: 새로운 토크나이저 시스템으로 교체해 구현을 단순화하고 라인 번호 지원을 내장했다.
  • 마크다운 렌더러 교체: React Markdown 의존성을 제거하고 자체 렌더러를 도입해 번들 크기를 줄이고 향후 최적화를 내부에서 제어 가능하게 됐다.
  • Static Rendering Mode: 스트리밍이 필요 없는 정적 마크다운을 스트리밍 오버헤드 없이 처리하는 모드다. 블로그 포스트나 정적 문서에 적합하다.
  • Mermaid 개선: 커스텀 에러 컴포넌트 지원, SVG/PNG 내보내기 기능, 줌·네비게이션 컨트롤이 있는 전체화면 뷰어가 추가됐다.
  • 업그레이드: npm i streamdown@latest 한 줄로 적용 가능하다.
왜 읽나AI 스트리밍 출력을 마크다운으로 렌더링하는 앱에서 성능과 번들 크기를 개선하고 싶은 프론트엔드 엔지니어에게 구체적인 최적화 접근 방향을 제시하는 릴리즈 노트다.
vercel-blog
Vercel Blog 블로그
원문은 여기서 이어서 읽을 수 있어요
원문 읽기
읽음 (0)

이 글과 비슷한

  1. 프론트엔드·LINE EngineeringLINE Engineering·

    AI로 웹 엔지니어 없이 LINE 앱 안에서 그룹 영상 통화 서비스 만들기

    LINE Planet 팀의 PM과 Android 엔지니어 두 명이 웹 전문 엔지니어 없이 LINE 앱 내에서 그룹 영상 통화 서비스를 개발한 과정을 다룬다. LIFF(LINE Front-end Framework)와 LINE Planet SDK를 활용해 React/Vite 기반 웹 앱을 구성했고, Firebase Cloud Functions로 별도 서버 인프라 없이 구현을 완료했다.

    #react#webrtc#firebase+2
  2. 프론트엔드·vercel-blogVercel Blog·

    Vercel과 Shopify의 Hydrogen 전면 재설계

    Vercel과 Shopify가 Hydrogen을 오픈소스·런타임 무관 프레임워크로 전면 재설계했다. 기존 Hydrogen은 빠른 헤드리스 스토어프런트 배포를 지원했지만 플랫폼 종속성이 있었고, 새 버전은 Svelte, Nuxt, Next.js 등 어느 JavaScript 프레임워크에서도 동작한다. 3레이어 아키텍처(코어/클라이언트/서버)로 재구성하면서 각 레이어가 명확한 역할을 분담한다.

    #react#nextjs#i18n+2
  3. 프론트엔드·토스 SLASH토스 SLASH·

    es-toolkit: 사내 소형 라이브러리에서 글로벌 프로젝트로

    토스 프론트엔드 팀이 사내 공유 유틸리티 라이브러리를 발전시켜 만든 es-toolkit이 주간 npm 다운로드 2,000만 건을 넘기며 글로벌 오픈소스 프로젝트로 자리 잡은 과정을 다룬다. lodash의 구조적 한계를 넘어 현대 웹 개발 환경에 최적화된 유틸리티 라이브러리를 처음부터 설계한 경험을 정리한다.

    #lodash#open-source#tree-shaking+2