Streamdown

Streamdown

Vercel · 코딩

Streamdown은 React 앱을 위한 스트리밍 Markdown 렌더러로, AI 모델에서 토큰 단위로 도착하는 Markdown을 그대로 다루도록 만들어졌다. Vercel이 만든 react-markdown의 직접 대체품이며, 아직 닫히지 않은 굵은 글씨나 마지막 백틱이 빠진 코드 블록처럼 스트리밍 출력의 까다로운 부분을 처리한다. 스트리밍 채팅 인터페이스나 AI 스트리밍 UI를 만든다면, Streamdown은 서식이 깜빡이고 깨지도록 두지 않고 안정적으로 유지한다. 무료다. 오픈 소스다. npm 패키지로 배포된다.

Streamdown 미리보기

Streamdown 소개

Streamdown이란

Streamdown은 AI 생성 콘텐츠를 표시하는 React 앱을 위한 오픈 소스 Markdown 렌더러다. 이 도구가 해결하는 핵심 문제는 타이밍이다. 일반 렌더러는 완성된 문서를 받는다고 가정하지만, LLM이 답변을 스트리밍하면 앱에는 조각이 도착한다. 문장이 단어 중간에서 끊길 수 있다. 링크에 닫는 괄호가 없을 수 있다. 표가 헤더 행보다 먼저 나타날 수 있다. react-markdown 같은 전통적인 도구는 이런 불완전한 블록에서 막히거나 잘못 그려낸다.

Streamdown은 불완전한 블록을 의도적으로 분석한다. 끝나지 않은 문법을 감지하고, 이미 도착한 부분에 스타일을 적용하며, 토큰이 더 들어올 때마다 매끄럽게 갱신한다. 그 결과는 깨진 것이 아니라 의도된 것처럼 보이는 텍스트 등장이다.

대가는 이것이 완성품이 아니라 개발자 도구라는 점이다. 내려받을 앱도, 눌러 볼 대시보드도 없다. React 프로젝트, Node.js 18 이상, 그리고 출력을 꾸밀 Tailwind CSS에 대한 어느 정도의 익숙함이 필요하다. 코드를 쓰지 않는다면 이 도구는 맞지 않는다.

시작하기

  1. 패키지 관리자로 설치한다. 예를 들어 npm i streamdown을 쓰거나 AI Elements 라이브러리에서 message 컴포넌트를 가져온다.
  2. 전역 CSS 파일에 @source "../node_modules/streamdown/dist/*.js";를 넣어 Streamdown의 소스 파일을 Tailwind 설정에 추가한다.
  3. <Streamdown> 컴포넌트를 페이지나 채팅 뷰에 넣고, 들어오는 markdown 문자열을 자식으로 전달한다.
  4. 타이핑 효과를 원하면 animated 프로퍼티로 단어별 애니메이션을 켜고 isAnimating을 스트리밍 상태에 연결한다.
  5. 출시 전에 rehype-harden 옵션으로 링크와 이미지를 제한해, 사용자나 모델 콘텐츠가 신뢰하지 않는 것을 로드하지 못하게 한다.

제품 정보

Streamdown의 요금, 지원 플랫폼, 성능을 한눈에 확인해 보세요.

무료 플랜예
유료 플랜$0
플랫폼Web (React 18+, Node.js 18+)
개발사Vercel
카테고리코딩
출시일Jun 2025
최근 업데이트Sep 2025
웹사이트 방문 수2.9K
웹사이트 글로벌 순위5.7M
API 제공 여부아니요

추천 대상

이 도구가 가장 잘 맞는 사용자, 작업, 상황입니다.

사용자

  • AI 채팅 앱을 만드는 React 개발자
  • AI 제품 팀
  • Markdown과 수식, 다이어그램을 함께 다루려는 프런트엔드 엔지니어

작업

  • 스트리밍 LLM 응답 렌더링
  • 풍부한 출력의 채팅 인터페이스 구축
  • AI 답변에서 코드와 수식 표시

활용 상황

  • 답변을 한 단어씩 스트리밍하는 AI 어시스턴트 출시
  • 여러 언어의 답변 표시
  • 신뢰할 수 없는 콘텐츠 안전하게 유지

주요 기능

스트리밍에 최적화된 렌더링

Streamdown이 존재하는 이유는 스트리밍 상황 그 자체다. **굵게처럼 열린 채로 있거나 닫는 괄호가 빠진 링크 같은 불완전한 Markdown을 감지하고, 블록을 닫아 아무것도 생 텍스트로 표시되지 않게 한다. 새 토큰이 도착하면 컴포넌트는 그 자리에서 스타일을 갱신한다. 채팅 UI가 단어가 완성되기 전에 깨진 별표를 번쩍이는 걸 본 적이 있는가. 그게 바로 문제다. 스트리밍 채팅 인터페이스를 만드는 사람에게 이 매끄러움이 바로 핵심이다.

react-markdown의 직접 대체품

프로젝트가 이미 react-markdown을 쓴다면 Streamdown으로 바꾸는 것은 거의 찾아 바꾸기에 가깝다. 컴포넌트가 같은 markdown 문자열을 자식으로 받으므로, 대부분의 통합은 새 import 하나 이상을 필요로 하지 않는다. 이 낮은 이전 비용 덕에 메시지 뷰를 다시 쓰겠다고 약속하지 않고도 시험해볼 수 있다. 종속도 없다.

풍부한 콘텐츠 지원

Streamdown은 순수 텍스트 이상을 다룬다. GitHub Flavored Markdown이 표, 할 일 목록, 취소선, 각주를 가져온다. KaTeX가 LaTeX 수식을 처리한다. Mermaid는 코드 블록에서 다이어그램을 그리고, Shiki가 코드에 구문 강조를 더한다. 산문과 수식, 코드 조각이 섞인 AI 답변에서 별도 렌더러를 쌓지 않고도 서식을 얻는다.

단어별 애니메이션

animated 프로퍼티는 단어를 하나씩 페이드인시키며 fadeIn, blurIn, slideUp 세 가지 스타일을 내장한다. 길이, 이징, 단어나 문자 기준 분할 여부를 설정할 수 있다. blurIn은 빠른 모델에서 편리한데, 흐림이 많은 토큰이 한 번에 도착했다는 사실을 가려주기 때문이다. 스트리밍이 멈추면 애니메이션은 완전히 제거된다.

보안 강화

Streamdown은 rehype-sanitize와 rehype-harden을 기본으로 켠 채 배포된다. harden 플러그인은 허용 프로토콜, 링크 접두사, 이미지 접두사를 설정하게 해주며, 이미지의 data URL 허용 여부도 정할 수 있다. AI 출력에는 내가 작성하지 않은 링크가 들어갈 수 있으므로, 실제 사용자에게 도달하기 전에 이 통제가 중요하다.

플러그인 구조

내장 처리는 두 단계로 돌아간다. remark는 Markdown 문법을, rehype는 HTML 출력을 맡는다. 직접 만든 플러그인 배열을 넘겨 기본값을 확장하거나 교체할 수 있고, 기본값도 내보내져 있으니 처음부터 새로 만드는 대신 덧붙일 수 있다. 특정 처리 흐름을 염두에 둔 사람이 기본 동작에 묶이지 않는다.

장단점

장점

  • 불완전한 Markdown을 우아하게 처리한다. 순수 react-markdown이 스트리밍 중에 막히는 바로 그 지점이다.
  • 무료이자 오픈 소스라 라이선스 비용이나 API 청구서를 고민할 필요가 없다.
  • 표, 수식, 다이어그램, 코드에 대한 폭넓은 콘텐츠 지원을 추가 라이브러리 없이 제공한다.
  • 애니메이션은 스트리밍이 끝나면 스스로 정리되어, 완료된 메시지에 DOM 부담을 남기지 않는다.
  • 이미 react-markdown으로 만들어진 프로젝트에 합리적인 이전 경로가 있다.

단점

  • 완전한 지원에는 React 19.1.1 이상과 Tailwind CSS 설정이 필요해 모든 스택에 맞지는 않는다.
  • 호스팅 버전이나 시각적 빌더가 없다. 요소를 끌어다 놓는 게 아니라 컴포넌트 코드를 쓴다.
  • 플러그인과 설정의 범위가 깊어 초보자는 문서에 많이 의존하게 된다.
  • 한 가지 문제를 잘 해결할 뿐 완전한 채팅 프레임워크를 지향하지 않으므로, 주변 UI는 직접 만들어야 한다.

자주 묻는 질문

React 앱 안에서 AI 모델로부터 조금씩 도착하는 Markdown을 렌더링한다. 반쯤 끝난 텍스트에서 깨지는 대신 부분 콘텐츠에 서식을 적용하고 토큰이 더 들어올 때마다 갱신하며, 이게 채팅 인터페이스를 읽기 쉽게 유지한다.

관련 콘텐츠

Streamdown와 관련된 도구, 스킬, 아티클을 살펴보세요.

Streamdown 대안

Forefront

Forefront

Forefront · 코딩

Forefront는 오픈소스 AI로 무언가를 만드는 웹 플랫폼이다. 대표적인 오픈소스 언어 모델을 자신의 데이터로 미세 조정하고, 성능을 평가하고, API로 실행하거나 내보내 직접 호스팅할 수 있다. 폐쇄형 플랫폼의 편의를 원하면서도 모델과 데이터의 소유권은 놓지 않으려는 개발자가 대상이다.

무료 / $0 - $99/mo자세히 보기
Startkit

Startkit

StartKit.AI · 코딩

Startkit은 AI SaaS와 AI 래퍼 제품을 만들기 위한 보일러플레이트다. 지루한 부분을 미리 연결해 둔 AI 스타트업 보일러플레이트라고 생각하면 된다. 인증, Stripe와 Lemon Squeezy 결제, 사용량 제한, 트랜잭션 이메일, 그리고 OpenAI, Anthropic, Groq, Llama와 통신하는 AI API 스타터 키트가 포함된다. 저장소를 복제하고 가격을 정한 뒤 사용자가 실제로 돈을 내는 부분에 착수하면 된다. React와 Tailwind 위의 Next.js로 만들어졌기 때문에 보일러플레이트 코드의 상당 부분이 이미 익숙하게 느껴진다.

유료 / $99 - $499 one-time자세히 보기
Testim

Testim

Tricentis · 코딩

Testim은 웹, 모바일, Salesforce 애플리케이션 전반에 걸쳐 엔드투엔드 테스트를 만들고 실행하는 AI 기반 테스트 자동화 플랫폼이다. 머신러닝에 기대어 인터페이스가 바뀌어도 테스트를 안정적으로 유지하므로, 팀은 깨진 셀렉터를 고치는 데 쓰는 시간을 줄인다. 오늘부터 쓸 수 있는 자동화 테스트 도구치고 나쁘지 않다. 브라우저에서 동작을 녹화해 테스트를 만들고, 더 세밀한 제어가 필요하면 JavaScript를 더한다. 바쁜 QA 팀에게 탄탄한 선택이다.

무료 / Custom pricing on request자세히 보기