Skip to content
PluginStats

@humanspeak/svelte-markdown weekly downloads statistics

By humanspeak · npm · Claude Code

Markdown and HTML renderer for Svelte 5 — built for rendering streaming AI agent output from Claude Code, ChatGPT, and agentic workflows. XSS-safe defaults, streaming-aware sanitization, token caching, TypeScript types, and Svelte 5 runes.

View on npm Fresh · Oct 18, 2026

@humanspeak/svelte-markdown has 18,988 recorded weekly downloads on npm, a decrease of 38.3% over the past 30 days, ranking #802 of 2,322 tracked listings.

Weekly downloads
18,988
Official API · Oct 18, 2026
7-day growth
-47.5%
-17.2K weekly downloads
30-day growth
-38.3%
-11.8K weekly downloads
90-day growth
-24.0%
-6K weekly downloads
Rank
#802
Among tracked npm listings

About @humanspeak/svelte-markdown

@humanspeak/svelte-markdown

A powerful, customizable markdown renderer for Svelte with TypeScript support. Built as a successor to the original svelte-markdown package by Pablo Berganza, now maintained and enhanced by Humanspeak, Inc.

NPM version Build Status AI tokens used building this repo — TokenMaxing Coverage Status License Downloads CodeQL Install size Code Style: Trunk TypeScript Types Maintenance

Features

  • 🔒 HTMLParser2 parsing with default URL and attribute sanitizers (protocol allowlist, on* handler stripping)
  • 🚀 Full markdown syntax support through Marked
  • 💪 Complete TypeScript support with strict typing
  • 🔄 Svelte 5 runes compatibility
  • ✂️ Inline snippet overrides — customize renderers without separate files
  • 🎨 Customizable component rendering system
  • ♿ Semantic default markup, including image alt text and task-list checkboxes
  • 🎯 GitHub-style slug generation for headers
  • 🧪 Comprehensive test coverage (vitest and playwright)
  • 🧩 First-class marked extensions support via extensions prop (e.g., KaTeX math, alerts)
  • 🎨 Opt-in syntax highlighting with one HighlightedCode renderer and your choice of engine (Shiki or TanStack Highlight) — streaming-compatible, tree-shaken out of the core bundle
  • ⚡ LRU token caching avoids repeated parsing of previously seen content
  • 📡 LLM streaming with incremental parsing and token reuse (about 2–3 ms per frame on the mixed-prose benchmark below)
  • 📬 Late and out-of-order packets: writeChunk({ value, offset }) assembles chunks in any arrival order and keeps rendering while gaps fill
  • 🖼️ Smart image lazy loading with fade-in animation

Upgrading to 2.0

Version 2.0 rebuilds the streaming engine. Component props and the writeChunk() / resetStream() API are unchanged, and most apps only need the version bump. Two behaviors changed:

  • Renderers for tokens inside list items and table cells receive only their own token fields; they no longer inherit the parent list's or table's raw, text, items, header, or rows.
  • The default code renderer emits one text node per line, so code.firstChild is the first line only. textContent and innerHTML are unchanged.

Read the 2.0 upgrade guide for the full list, including streaming output fixes and the new IncrementalParser fields.

Upgrading with an AI assistant? Paste this so it reads the right sources first:

I am upgrading @humanspeak/svelte-markdown from 1.x to 2.0 in a Svelte 5 project.
Before changing anything, read these sources:

- Upgrade guide: https://markdown.svelte.page/docs/migration/v2.md
- Documentation index for LLMs: https://markdown.svelte.page/llms.txt
- Full documentation text: https://markdown.svelte.page/llms-full.txt
- Streaming behavior: https://markdown.svelte.page/docs/advanced/llm-streaming.md
- Direct parser use: https://markdown.svelte.page/docs/advanced/headless-parser.md
- Release notes: https://github.com/humanspeak/svelte-markdown/releases

Then search my codebase for:

1. Custom renderers or snippets used inside lists and tables that read raw,
   text, items, header, or rows from props.
2. Code that reads firstChild or childNodes of rendered <code> elements or of
   the markdown container.
3. Direct IncrementalParser usage.
4. Tests that snapshot streamed output mid-stream.

List each place that needs a change, explain why using the guide, and propose
the smallest fix.

Installation

Requires Svelte 5 and Node.js 22 or newer for package tooling.

npm i -S @humanspeak/svelte-markdown

Or with your preferred package manager:

pnpm add @humanspeak/svelte-markdown
yarn add @humanspeak/svelte-markdown

Basic Usage

<script lang="ts">
    import SvelteMarkdown from '@humanspeak/svelte-markdown'

    const source = `
# This is a header

This is a paragraph with **bold** and <em>mixed HTML</em>.

* List item with \`inline code\`
* And a [link](https://svelte.dev)
  * With nested items
  * Supporting full markdown
`
</script>

<SvelteMarkdown {source} />

Rendering AI Agent Output

Modern AI coding agents — Claude Code, Codex, agentic workflows — increasingly emit HTML alongside markdown for richer output (design mockups, dashboards, reports, interactive artifacts). @humanspeak/svelte-markdown is built for this:…

Description from the npm listing.

  • svelte
  • svelte5
  • sveltekit
  • markdown
  • renderer
  • parser
  • fast
  • performance
  • cache
  • caching
  • marked
  • component
  • typescript
  • runes
  • md
  • documentation
  • html
  • converter
  • formatting
  • customizable

README badge

Show your rank in a README or on your website. The badge updates automatically.

Charts

Images: 30d · 1y · all time · 1600×900 dark

Adoption over time

@humanspeak/svelte-markdown weekly downloads on npm, last 90 days: 18,988 weekly downloads as of Oct 18, 2026, -24.0% over 90 days.@humanspeak/svelte-markdownWeekly downloads on npm · Last 90 days18,988downloads / week-24.0% over 90 days010K20K30K40K50K60KJul 20Aug 4Aug 19Sep 3Sep 18Oct 3Oct 18downloads / weekobservedarchived (Internet Archive)no observationsJul 22, 2026 – Oct 18, 2026 · 89 observations · Updated Oc…pluginstats.com
@humanspeak/svelte-markdown weekly downloads on npm, last 90 days: 18,988 weekly downloads as of Oct 18, 2026, -24.0% over 90 days.

7/30/90-day growth

@humanspeak/svelte-markdown weekly downloads growth on npm: -47.5% over 7 days, -38.3% over 30 days, -24.0% over 90 days.@humanspeak/svelte-markdownWeekly downloads growth on npm18,988downloads / week now7-day growth-17,160 weekly downloads-47.5%30-day growth-11,799 weekly downloads-38.3%90-day growth-6,011 weekly downloads-24.0%Growth vs. nearest observation to each baseline date · Updated Oct 18, 2026pluginstats.com
@humanspeak/svelte-markdown weekly downloads growth on npm: -47.5% over 7 days, -38.3% over 30 days, -24.0% over 90 days.

Ranking history

@humanspeak/svelte-markdown npm ranking history: currently #802 (by weekly downloads).@humanspeak/svelte-markdownnpm ranking · by weekly downloads · Last 90 days#802current rank#770#775#780#785#790#795#800#805Jul 22Aug 6Aug 21Sep 5Sep 20Oct 5Oct 20rankOct 18, 2026 – Oct 20, 2026 · 3 observations · Updated Oct 18, 2026pluginstats.com
@humanspeak/svelte-markdown npm ranking history: currently #802 (by weekly downloads).

Listing placement

All npm2,320 listings · 116 pages · 1,161 shown · page 41, #3 (overall #803)
All npm: every listing in weekly downloads order

Listing placement

Claude Code255 listings · 13 pages · page 1, #19 (overall #19)
Claude Code: every listing in weekly downloads order

Filled points are observed values; hollow points come from Internet Archive snapshots of the listing page. Dashed segments span periods with no observations — values between points are not interpolated.

Each band is one page of 20. Weekly downloads on a linear scale. Placement is projected from weekly downloads, so it can differ from the marketplace's own sort order. Hover a dot to see the listing.

Recent observations

Full history (122)
Recent weekly downloads observations for @humanspeak/svelte-markdown
Date (UTC)Weekly downloadsChange vs. previous
18,988+334
18,654-4.2K
22,812-1K
23,815-6.2K
30,033-5.7K
35,7040
35,704-444
36,148+2.9K
33,220+862
32,358+1.3K
31,084-1.9K
32,993-3K
35,951-7.9K
43,900—

Data source

Weekly downloads (trailing 7 complete days) come from the official npm downloads API. Downloads include CI and mirrors and are not equivalent to installs or users. npm publishes no ratings.

Listing: https://www.npmjs.com/package/@humanspeak/svelte-markdown. First seen Oct 16, 2026; last successful collection Oct 20, 2026. See the methodology.