Hayden Bleasel
858ff5de0c
Update Biome and Ultracite (fix security issues)
2026-02-18 20:50:27 -08:00
Hayden Bleasel
847132d73c
Remove ts-router-chat-test
2026-02-18 20:47:58 -08:00
Hayden Bleasel
93a79cc06b
Resolves #270
2026-02-18 19:08:39 -08:00
dependabot[bot]
40ff972f40
Bump the npm_and_yarn group across 1 directory with 4 updates ( #405 )
...
Bumps the npm_and_yarn group with 1 update in the / directory: [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk ).
Updates `@modelcontextprotocol/sdk` from 1.25.2 to 1.26.0
- [Release notes](https://github.com/modelcontextprotocol/typescript-sdk/releases )
- [Commits](https://github.com/modelcontextprotocol/typescript-sdk/compare/v1.25.2...v1.26.0 )
Updates `ajv` from 8.17.1 to 8.18.0
- [Release notes](https://github.com/ajv-validator/ajv/releases )
- [Commits](https://github.com/ajv-validator/ajv/compare/v8.17.1...v8.18.0 )
Updates `hono` from 4.11.4 to 4.11.10
- [Release notes](https://github.com/honojs/hono/releases )
- [Commits](https://github.com/honojs/hono/compare/v4.11.4...v4.11.10 )
Updates `qs` from 6.14.1 to 6.15.0
- [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md )
- [Commits](https://github.com/ljharb/qs/compare/v6.14.1...v6.15.0 )
---
updated-dependencies:
- dependency-name: "@modelcontextprotocol/sdk"
dependency-version: 1.26.0
dependency-type: direct:production
dependency-group: npm_and_yarn
- dependency-name: ajv
dependency-version: 8.18.0
dependency-type: indirect
dependency-group: npm_and_yarn
- dependency-name: hono
dependency-version: 4.11.10
dependency-type: indirect
dependency-group: npm_and_yarn
- dependency-name: qs
dependency-version: 6.15.0
dependency-type: indirect
dependency-group: npm_and_yarn
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-18 14:26:37 -08:00
Hayden Bleasel
068acdf5f4
Fix fullscreen, fix unit tests
2026-02-18 12:40:06 -08:00
dependabot[bot]
eb4e2a6564
Bump next in the npm_and_yarn group across 1 directory ( #372 )
...
Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js ).
Updates `next` from 16.1.3 to 16.1.5
- [Release notes](https://github.com/vercel/next.js/releases )
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js )
- [Commits](https://github.com/vercel/next.js/compare/v16.1.3...v16.1.5 )
---
updated-dependencies:
- dependency-name: next
dependency-version: 16.1.5
dependency-type: direct:production
dependency-group: npm_and_yarn
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-17 16:06:36 -08:00
Hayden Bleasel
4be8f6c258
Merge animate into main library
2026-02-08 15:25:00 -08:00
Hayden Bleasel
c1e1e66a0f
Resolves #290 , resolves #371 , resolves #153
2026-02-07 18:12:43 -08:00
Hayden Bleasel
a1e2fad475
Resolves #368
2026-02-07 17:00:33 -08:00
Hayden Bleasel
f6d6660048
Update pnpm-lock.yaml
2026-02-03 11:23:24 -08:00
Hayden Bleasel
3f4a8acb37
Update pnpm-lock.yaml
2026-01-18 17:13:17 -08:00
Hayden Bleasel
bde9ea5eb0
Add test:coverage commands
2026-01-17 17:19:50 -08:00
Hayden Bleasel
add8edaeab
Resolves #301
2026-01-17 16:59:58 -08:00
Hayden Bleasel
0b80aed583
Switch to plugin architecture ( #352 )
...
* Plugin trial
* Update docs and tests
* Update homepage add new section
* Update usage.tsx
* Split out CJK plugin
* Extract plugins into new packages
* Misc fixes
* Fix lint / formatting
* Fix: The Streamdown component's memo comparison doesn't compare the plugins prop, preventing re-renders when plugins change while other props stay the same
Co-authored-by: haydenbleasel <hello@haydenbleasel.com >
* Fix: TypeScript type mismatch at line 89 in `index.ts`: the visitor function's `index` parameter is typed as `number | undefined`, but the `visit` function expects `number | null`. The `undefined` type is not assignable to `number | null`.
This commit fixes the issue reported at /vercel/path0/packages/streamdown-cjk/index.ts:89
## TypeScript type incompatibility in visitor callback
**What fails:** TypeScript compiler fails during DTS (type definitions) build in `packages/streamdown-cjk/index.ts` at line 89
**How to reproduce:**
```bash
cd packages/streamdown-cjk
pnpm build
```
**Result:**
```
index.ts(89,3): error TS2769: No overload matches this call.
Overload 1 of 2, '(tree: Root, check: "link", visitor: BuildVisitor<Root, "link">, reverse?: boolean | null | undefined): undefined', gave the following error.
Argument of type '(node: Link, index: number | null, parent?: Parent) => number | undefined' is not assignable to parameter of type 'BuildVisitor<Root, "link">'.
Types of parameters 'index' and 'index' are incompatible.
Type 'number | undefined' is not assignable to type 'number | null'.
Type 'undefined' is not assignable to type 'number | null'.
```
**Root cause:** The visitor callback function passed to the `visit()` function from `unist-util-visit` was declaring the `index` parameter as `number | null`, but the visitor can also receive `undefined` as the index value. The `BuildVisitor` type signature expects the callback to accept `number | null | undefined` to properly match the library's API.
**Fix:** Updated the `index` parameter type annotation on line 89 from `number | null` to `number | null | undefined` to match the actual possible values that the visitor receives and the expected `BuildVisitor` type signature.
Co-authored-by: Vercel <vercel[bot]@users.noreply.github.com>
Co-authored-by: haydenbleasel <hello@haydenbleasel.com >
* Fix tests
* Remove CDN paths
* Fix tests
* More cleanup
* Remove shiki from main bundle
* Update index.ts
* Cleanup test repo
* Cleanup website
* Delete next-env files
* Update .gitignore
* Fix lockfile
* Upgrade Next and React
* Simplify themes
* Update test site
* Misc fixes
* Type fixes
* Create perky-cobras-punch.md
---------
Co-authored-by: Vercel <vercel[bot]@users.noreply.github.com>
2026-01-17 14:38:20 -08:00
dependabot[bot]
ec4a34a456
Bump the npm_and_yarn group across 1 directory with 2 updates ( #335 )
...
Bumps the npm_and_yarn group with 1 update in the / directory: [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk ).
Updates `@modelcontextprotocol/sdk` from 1.24.3 to 1.25.2
- [Release notes](https://github.com/modelcontextprotocol/typescript-sdk/releases )
- [Commits](https://github.com/modelcontextprotocol/typescript-sdk/compare/1.24.3...v1.25.2 )
Updates `qs` from 6.14.0 to 6.14.1
- [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md )
- [Commits](https://github.com/ljharb/qs/compare/v6.14.0...v6.14.1 )
---
updated-dependencies:
- dependency-name: "@modelcontextprotocol/sdk"
dependency-version: 1.25.2
dependency-type: direct:production
dependency-group: npm_and_yarn
- dependency-name: qs
dependency-version: 6.14.1
dependency-type: indirect
dependency-group: npm_and_yarn
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-08 19:34:07 -08:00
Hayden Bleasel
158657ad87
Upgrade Turbo and linter
2026-01-06 16:31:57 -08:00
Hayden Bleasel
32622ea1ad
Add bundle size command
2026-01-06 14:43:03 -08:00
Hayden Bleasel
9cf5c09a34
Hotfix sanitize ( #334 )
...
* Add rehype-sanitize
* Version bump
2026-01-06 13:08:52 -08:00
Jie Wang
82b64745a2
fix(deps): remove deprecated hast dep ( #322 )
2026-01-04 11:36:36 -08:00
vercel[bot]
029ee2cb47
Fix React Server Components CVE vulnerabilities ( #309 )
...
Updated dependencies to fix Next.js and React CVE vulnerabilities.
The fix-react2shell-next tool automatically updated the following packages to their secure versions:
- next
- react-server-dom-webpack
- react-server-dom-parcel
- react-server-dom-turbopack
All package.json files have been scanned and vulnerable versions have been patched to the correct fixed versions based on the official React advisory.
Co-authored-by: Vercel <vercel[bot]@users.noreply.github.com>
2025-12-11 20:32:36 -08:00
vercel[bot]
1110b0a709
Fix React Server Components CVE vulnerabilities ( #308 )
...
Updated dependencies to fix Next.js and React CVE vulnerabilities.
The fix-react2shell-next tool automatically updated the following packages to their secure versions:
- next
- react-server-dom-webpack
- react-server-dom-parcel
- react-server-dom-turbopack
All package.json files have been scanned and vulnerable versions have been patched to the correct fixed versions based on the official React advisory.
Co-authored-by: Vercel <vercel[bot]@users.noreply.github.com>
2025-12-11 14:14:12 -08:00
Hayden Bleasel
a6e6bc5410
Bump deps
2025-12-11 11:06:24 -08:00
Hayden Bleasel
6bd211de4e
Resolves #299
2025-12-08 13:54:31 -08:00
Hayden Bleasel
0a732fec47
Update Ultracite
2025-12-07 10:41:01 -08:00
Hayden Bleasel
73c3b61bdd
Bump deps
2025-12-06 23:34:57 -08:00
Hayden Bleasel
1c752e3873
Update docs
2025-12-06 23:33:36 -08:00
Hayden Bleasel
133c6c8281
Load KaTeX CSS from CDN, for #74
2025-12-06 23:00:10 -08:00
Hayden Bleasel
5dbb7c765a
Upgrade React and Next.js
2025-12-04 21:08:39 -08:00
dependabot[bot]
25feda0397
Bump the npm_and_yarn group across 3 directories with 1 update ( #286 )
...
Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js ).
Bumps the npm_and_yarn group with 1 update in the /apps/test directory: [next](https://github.com/vercel/next.js ).
Bumps the npm_and_yarn group with 1 update in the /apps/website directory: [next](https://github.com/vercel/next.js ).
Updates `next` from 16.0.1 to 16.0.7
- [Release notes](https://github.com/vercel/next.js/releases )
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js )
- [Commits](https://github.com/vercel/next.js/compare/v16.0.1...v16.0.7 )
Updates `next` from 16.0.1 to 16.0.7
- [Release notes](https://github.com/vercel/next.js/releases )
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js )
- [Commits](https://github.com/vercel/next.js/compare/v16.0.1...v16.0.7 )
Updates `next` from 16.0.1 to 16.0.7
- [Release notes](https://github.com/vercel/next.js/releases )
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js )
- [Commits](https://github.com/vercel/next.js/compare/v16.0.1...v16.0.7 )
---
updated-dependencies:
- dependency-name: next
dependency-version: 16.0.7
dependency-type: direct:production
dependency-group: npm_and_yarn
- dependency-name: next
dependency-version: 16.0.7
dependency-type: direct:production
dependency-group: npm_and_yarn
- dependency-name: next
dependency-version: 16.0.7
dependency-type: direct:production
dependency-group: npm_and_yarn
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-04 17:27:06 -08:00
Hayden Bleasel
36956165f4
Merge branch 'main' of https://github.com/vercel/streamdown
2025-12-04 09:48:31 -08:00
Hayden Bleasel
8d8d67f50d
Add rehype-sanitize
2025-12-04 09:47:16 -08:00
dependabot[bot]
a3e1fa1d25
Bump the npm_and_yarn group across 1 directory with 3 updates ( #277 )
...
Bumps the npm_and_yarn group with 1 update in the / directory: [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk ).
Updates `@modelcontextprotocol/sdk` from 1.22.0 to 1.24.0
- [Release notes](https://github.com/modelcontextprotocol/typescript-sdk/releases )
- [Commits](https://github.com/modelcontextprotocol/typescript-sdk/compare/1.22.0...1.24.0 )
Updates `body-parser` from 2.2.0 to 2.2.1
- [Release notes](https://github.com/expressjs/body-parser/releases )
- [Changelog](https://github.com/expressjs/body-parser/blob/master/HISTORY.md )
- [Commits](https://github.com/expressjs/body-parser/compare/v2.2.0...v2.2.1 )
Updates `express` from 5.1.0 to 5.2.1
- [Release notes](https://github.com/expressjs/express/releases )
- [Changelog](https://github.com/expressjs/express/blob/master/History.md )
- [Commits](https://github.com/expressjs/express/compare/v5.1.0...v5.2.1 )
---
updated-dependencies:
- dependency-name: "@modelcontextprotocol/sdk"
dependency-version: 1.24.0
dependency-type: direct:production
dependency-group: npm_and_yarn
- dependency-name: body-parser
dependency-version: 2.2.1
dependency-type: indirect
dependency-group: npm_and_yarn
- dependency-name: express
dependency-version: 5.2.1
dependency-type: indirect
dependency-group: npm_and_yarn
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-04 09:40:07 -08:00
Hayden Bleasel
d3ed120364
Remend ( #279 )
...
* Initial extraction
* Split up files
* Misc cleanup
* Break apart test file
* Add vitest/coverage-v8
* Increase coverage to 99.63%
* Fix cognitive complexity issues
* Run Ultracite
* Delete parse-incomplete-markdown.ts
* Add postbuild script for use client directive
* Update README.md
* Add default export
* Update docs
* Rename package
* Create wicked-badgers-decide.md
* Fix remend tests
* Fix remend benchmarks
* Fix remaining Streamdown tests
* Update underscore-bug.test.tsx
* Update test.yml
* Update test.yml
2025-12-03 11:17:18 -08:00
Hayden Bleasel
a954419dd5
Bump rehype harden ( #269 )
...
* Update rehype-harden
* Update props
* Update security.mdx
* Changeset, install deps
2025-11-28 15:31:44 -08:00
yeliex
99797c2905
chore: move unified from devDependencies to dependencies ( #266 )
2025-11-28 12:41:54 -08:00
Hayden Bleasel
49b6692213
246 v162 typeerror import processdefaultcwd is not a function ( #247 )
...
* Create tanstack-router test app
* Add Streamdown
* Replace ReactMarkdown with Streamdown
* Use AI Gateway
* Fix streamdown to build browser only
2025-11-22 21:37:54 -08:00
Hayden Bleasel
476167eab7
Bundle size optimization ( #244 )
...
* Direct icon imports
* Lazy load mermaid and shiki until used
* Only load KaTeX when maths is present
* Add changesets
* Improve test app output
* Create lucide-react.d.ts
* Update packages/streamdown/lib/code-block/skeleton.tsx
Co-authored-by: vercel[bot] <35613825+vercel[bot]@users.noreply.github.com>
---------
Co-authored-by: vercel[bot] <35613825+vercel[bot]@users.noreply.github.com>
2025-11-22 18:50:11 -08:00
Hayden Bleasel
62888665f8
Performance improvements, part 2 ( #241 )
...
* Add functional benchmarking suite
* Optimize regex performance
* Fix rendering issue with code blocks
* Fix bench commands
* Table optimizations
* Math Block Detection Caching
* Parse blocks optimizations
* More regex-to-loop optimizations
* Update layout.tsx
* Remove dependency on vfile
* Optimize string operations
* Create markdown.test.tsx
* Optimized cache key generation
* Fix display issue
* Add core Markdown parsing benchmarks
* Update section.tsx
* CSV / TSV escaping optimization
* More optimizations
* Run Ultracite
* Fix remaining lint issues
2025-11-21 17:45:53 -08:00
Hayden Bleasel
6e94a180ed
Remove benchmarks
2025-11-21 15:13:09 -08:00
Hayden Bleasel
6f19ee03e7
Remove dependency on react-markdown
2025-11-19 18:31:53 -08:00
Hayden Bleasel
819ce60e37
Create performance benchmarks
2025-11-19 17:29:45 -08:00
Hayden Bleasel
b55cbdc954
Fix security issues, improve performance ( #233 )
...
* Resolves https://github.com/vercel/streamdown/security/code-scanning/9
* Resolves https://github.com/vercel/streamdown/security/code-scanning/7
* Resolves https://github.com/vercel/streamdown/security/code-scanning/6
* Resolves https://github.com/vercel/streamdown/security/code-scanning/3
* Resolves https://github.com/vercel/streamdown/security/code-scanning/1
* Bump deps, resolves https://github.com/vercel/streamdown/security/dependabot/10
* Run Ultracite
* Create major-spoons-do.md
* Update parse-incomplete-markdown.ts
* Update packages/streamdown/lib/parse-incomplete-markdown.ts
Co-authored-by: vercel[bot] <35613825+vercel[bot]@users.noreply.github.com>
* Update parse-incomplete-markdown.test.ts
---------
Co-authored-by: vercel[bot] <35613825+vercel[bot]@users.noreply.github.com>
2025-11-19 13:57:04 -08:00
Hayden Bleasel
f941fd6f53
Resolves #185
2025-11-15 21:20:02 -08:00
Hayden Bleasel
75e9d401b9
Linting / Formatting / Documentation fixes ( #220 )
...
* Bump deps
* Update biome.jsonc
* Remove duplicate Biome config
* Run Ultracite
* Resolves #217
* For #198
* Update biome.jsonc
* For #198
* For #198
* For #198
* For #198
* Update node-attribute-removed.test.tsx
* Resolves #198
* Update README.md
* Add changeset files
* Create tidy-lemons-win.md
2025-11-15 20:23:36 -08:00
Hayden Bleasel
44ae73eaaf
Documentation ( #219 )
...
* Initial migration
* Update homepage
* Delete .source
* Fix gitignores
* Draft content
* Finish drafting content, migrate FAQ
* Update code-blocks.tsx
* Update route.ts
* Update next config
* Upgrade to Next.js 16, fix commands
* Update layout.tsx
2025-11-15 19:41:00 -08:00
dependabot[bot]
9633eda7c6
chore(deps): bump ai in the npm_and_yarn group across 1 directory ( #210 )
...
Bumps the npm_and_yarn group with 1 update in the / directory: [ai](https://github.com/vercel/ai ).
Updates `ai` from 5.0.32 to 5.0.52
- [Release notes](https://github.com/vercel/ai/releases )
- [Changelog](https://github.com/vercel/ai/blob/main/CHANGELOG.md )
- [Commits](https://github.com/vercel/ai/compare/ai@5.0.32...ai@5.0.52 )
---
updated-dependencies:
- dependency-name: ai
dependency-version: 5.0.52
dependency-type: direct:production
dependency-group: npm_and_yarn
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-12 22:40:54 -08:00
Hayden Bleasel
3c780b4827
fix: footnotes are blocked by default ( #179 )
...
* Update rehype-harden
* Fix footnotes rendering
* Update footnotes.test.tsx
* Create tender-readers-shave.md
2025-10-10 11:04:50 -07:00
Hayden Bleasel
6c0672b1e9
Fix footnotes ( #174 )
...
* Fix footnotes in markdown parsing
* Create footnotes.test.tsx
* Create light-beers-peel.md
* Bump rehype-harden
* Update gfm.tsx
* Update parse-blocks.tsx
* Update pnpm-lock.yaml
2025-10-10 10:08:51 -07:00
Hayden Bleasel
f5d6cd6668
Remove options props, make plugins fully customizable ( #177 )
...
* Remove options props, make plugins fully customizable
* Update docs
* Create puny-turkeys-press.md
* Remove harden options
* Make defaults easily overridable
* Simplify keys
* Update hardened.tsx
* Remove unused unit tests
* Add missing props
2025-10-10 09:39:40 -07:00
Hayden Bleasel
6c6f507e21
Replace harden-react-markdown with rehype-harden ( #170 )
...
* replace harden-react-markdown with rehype-harden
* Improve docs
* Add hardenOptions prop to allow for full props
* Improve unit tests for hardenOptions
* Create cute-deer-cut.md
* Update hardened.tsx
2025-10-09 17:02:04 -07:00