[PR #13360] [CLOSED] Upgrade Streamdown #24717

Closed
opened 2026-04-19 17:45:41 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/ollama/ollama/pull/13360
Author: @haydenbleasel
Created: 12/6/2025
Status: Closed

Base: mainHead: upgrade-streamdown


📝 Commits (3)

📊 Changes

6 files changed (+173 additions, -393 deletions)

View changed files

📝 app/ui/app/package-lock.json (+162 -181)
📝 app/ui/app/package.json (+1 -8)
📝 app/ui/app/src/components/StreamingMarkdownContent.tsx (+9 -201)
📝 app/ui/app/src/components/Thinking.tsx (+0 -1)
📝 app/ui/app/src/index.css (+0 -1)
📝 app/ui/app/tailwind.config.js (+1 -1)

📄 Description

Hi @hoyyeva,

Thanks for implementing Streamdown! I thought I'd jump in and help you upgrade it.

Here's a summary of my changes:

1. Updated Dependencies

  • Upgraded streamdown from ^1.4.0 to ^1.6.10
  • Removed react-markdown, rehype-katex, rehype-raw, remark-gfm, remark-math and rehype-prism-plus as they were unused
  • Removed shiki and the custom code block - I can see your custom version implemented token-based rendering rather than dangerouslySetInnerHTML - we fixed this in Streamdown so it uses the same approach

2. Fixed styling

  • Added ./node_modules/streamdown/dist/*.js to the content array and removed the prose classes wrapping Streamdown. This allows Tailwind to look at Streamdown source code for the typography styles.

3. Simplified StreamingMarkdownContent.tsx

  • Removed memoization wrapper React.memo() (Streamdown handles this internally)
  • Removed custom pre component from Streamdown components
  • Removed custom table wrapper (Streamdown has built-in table styling)
  • Simplified wrapper div to just max-w-full break-words
  • Removed size prop - from my testing, this wasn't impacting the reasoning rendering.
  • Added new default remark plugins

4. Removed CSS Import (index.css:3)

  • Removed import "katex/dist/katex.min.css" (Streamdown automatically loads Katex CSS when the response requires it)

I'm still testing but would love to collab with you on any issues and things you need to make Ollama better 🙏


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/ollama/ollama/pull/13360 **Author:** [@haydenbleasel](https://github.com/haydenbleasel) **Created:** 12/6/2025 **Status:** ❌ Closed **Base:** `main` ← **Head:** `upgrade-streamdown` --- ### 📝 Commits (3) - [`0261fcd`](https://github.com/ollama/ollama/commit/0261fcd89164e1c3ad604bda8bb231f869c89cb2) Update Streamdown - [`1ac9b2b`](https://github.com/ollama/ollama/commit/1ac9b2bc09b6bdf697249b9909956538e47d536b) Remove size prop - [`fcdca74`](https://github.com/ollama/ollama/commit/fcdca7442ef973e7bb2cb2b0c4c68e20e6396436) Add new default Remark plugins ### 📊 Changes **6 files changed** (+173 additions, -393 deletions) <details> <summary>View changed files</summary> 📝 `app/ui/app/package-lock.json` (+162 -181) 📝 `app/ui/app/package.json` (+1 -8) 📝 `app/ui/app/src/components/StreamingMarkdownContent.tsx` (+9 -201) 📝 `app/ui/app/src/components/Thinking.tsx` (+0 -1) 📝 `app/ui/app/src/index.css` (+0 -1) 📝 `app/ui/app/tailwind.config.js` (+1 -1) </details> ### 📄 Description Hi @hoyyeva, Thanks for implementing Streamdown! I thought I'd jump in and help you upgrade it. Here's a summary of my changes: **1. Updated Dependencies** - Upgraded streamdown from ^1.4.0 to ^1.6.10 - Removed react-markdown, rehype-katex, rehype-raw, remark-gfm, remark-math and rehype-prism-plus as they were unused - Removed shiki and the custom code block - *I can see your custom version implemented token-based rendering rather than dangerouslySetInnerHTML - we fixed this in Streamdown so it uses the same approach* **2. Fixed styling** - Added `./node_modules/streamdown/dist/*.js` to the content array and removed the prose classes wrapping Streamdown. This allows Tailwind to look at Streamdown source code for the typography styles. **3. Simplified `StreamingMarkdownContent.tsx`** - Removed memoization wrapper React.memo() (Streamdown handles this internally) - Removed custom pre component from Streamdown components - Removed custom table wrapper (Streamdown has built-in table styling) - Simplified wrapper div to just `max-w-full break-words` - Removed `size` prop - from my testing, this wasn't impacting the reasoning rendering. - Added new default remark plugins **4. Removed CSS Import (index.css:3)** - Removed `import "katex/dist/katex.min.css"` (Streamdown automatically loads Katex CSS when the response requires it) I'm still testing but would love to collab with you on any issues and things you need to make Ollama better 🙏 --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-04-19 17:45:41 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/ollama#24717