Skip to content
Dashboard

Streamdown 2.2 - animated streaming and better support for custom HTML

DX Engineer

Link to headingAnimated streaming

import { Streamdown } from "streamdown";
import "streamdown/styles.css";
export default function Page() {
return (
<Streamdown animated isAnimating={status === "streaming"}>
{markdown}
</Streamdown>
);
}

Link to headingBetter custom HTML support

<Streamdown
allowedTags={{
source: ["id"], // Allow <source> tag with id attribute
}}
components={{
source: ({ id, children }) => (
<button
onClick={() => console.log(`Navigate to source: ${id}`)}
className="text-blue-600 underline cursor-pointer"
>
{children}
</button>
),
}}
>
{markdown}
</Streamdown>

Link to headingReactMarkdown compatibility

<Streamdown
allowedElements={["p", "h1", "h2"]}
disallowedElements={["img"]}
unwrapDisallowed={false}
skipHtml={true}
>
{markdown}
</Streamdown>

Ready to deploy?