SvGrid

by sv-grid

The Svelte 5 native data grid with a commercial MCP server for Claude, Cursor, and Zed available in the @svgrid/mcp package. The MCP server provides accurate, version-pinned answers about the library and demos. Requires Node.js >= 18 and pnpm for development.

Developer toolsstdio or Streamable HTTPCommunity

Repository-wide counts · Cached 2026-06-22

Overview

The SvGrid MCP server is a publicly available project. Review the upstream repository for installation instructions, supported tools, compatibility, permissions, and current maintenance status.

Configuration

Configuration, transport, authentication, and runtime requirements vary by project. Open the repository before connecting and use the smallest set of credentials and permissions required.

Open the SvGrid repository to read the latest documentation.

KEEP EXPLORING

Compare source, connection, and authentication details before choosing an implementation.

View the complete category

模型上下文协议服务器

modelcontextprotocol

Community

一组用于模型上下文协议(MCP)的参考实现,展示了对大型语言模型(LLM)工具和数据源的安全且受控的访问方式。

Context7 Platform - Up-to-date Code Docs For Any Prompt

upstash

Community

Context7 MCP server providing up-to-date, version-specific documentation and code examples for libraries, enabling coding agents to fetch accurate docs and code snippets. Requires an API key for higher rate limits, passed via CONTEXT7_API_KEY header.

Playwright MCP

Microsoft Corporation

Community

A Model Context Protocol (MCP) server that provides browser automation capabilities using Playwright. Enables LLMs to interact with web pages through structured accessibility snapshots, bypassing the need for screenshots or visually-tuned models.

AIHawk

feder-cr

Community

AIHawk is an anti detect browser and web browsing agent, open source, with an MCP server for coding agents: undetected, no captchas, no blocks. It requires an OpenRouter API key for the standalone web UI mode, which can be provided via the --openrouter-key flag or the OPENROUTER_API_KEY environment variable or a .env file in the running directory.

FROM THE SOURCE

Repository README

Build-time snapshot · Retrieved 2026-10-05

View original

SvGrid

SvGrid

npm version npm downloads CI MIT License TypeScript Svelte 5 GitHub stars

The Svelte data grid. Headless-first. Render-ready.

SvGrid is a data grid and data table for Svelte 5, written with runes from the first line rather than ported from a React grid. It virtualizes rows and columns (there is a 1 million row demo below) and ships Excel-style filtering, inline editing, row grouping, tree data, pivot, charts, and server-side data. Drop in the <SvGrid /> component, or build your own table on the headless engine from @svgrid/grid/core. MIT licensed, TypeScript-first, and it server-renders under SvelteKit.

A SvGrid trading desk: KPI cards, sector filter chips, and a virtualized data table with sparkline trend columns, conditional colour, and pinned columns.1m-rows

Quick links: Website · Docs · 400+ Demos · Pricing · Roadmap · Blog · Releases · npm

If you build on Svelte 5, star the repo so it is there when you need a grid. Stars are also how other Svelte developers find it.


Install

npm install @svgrid/grid

Or start from a working Vite + Svelte 5 app (npm create @svgrid@latest), or add it to a Svelte CLI project with npx sv add @svgrid.

The 30-second example

<script lang="ts">
  import { SvGrid, type GridColumns } from '@svgrid/grid'

  type Row = { firstName: string; age: number; status: string }

  const data = $state<Row[]>([
    { firstName: 'Ada',   age: 36, status: 'active' },
    { firstName: 'Linus', age: 54, status: 'active' },
    { firstName: 'Grace', age: 85, status: 'inactive' },
  ])

  const columns: GridColumns<Row> = [
    { field: 'firstName', header: 'First name' },
    { field: 'age',       header: 'Age' },
    { field: 'status',    header: 'Status' },
  ]
</script>

<SvGrid {data} {columns} sortable filterable editable />

That is a working, accessible table. Sorting, filtering, virtualization, cell selection, and inline editing each switch on with the matching prop.

03-inline-edit

Headless or render: same engine

<SvGrid /> is a renderer over a headless state machine, and the state machine is public. Import it from @svgrid/grid/core (2.7 KB gzipped, no DOM, no CSS) when you want your own markup, a canvas renderer, or a row model you can unit-test in plain Node:

import {
  createSvGrid, createCoreRowModel, createSortedRowModel,
  tableFeatures, rowSortingFeature, sortFns,
} from '@svgrid/grid/core'

const grid = createSvGrid({
  _features: tableFeatures({ rowSortingFeature }),
  _rowModels: {
    coreRowModel: createCoreRowModel(),
    sortedRowModel: createSortedRowModel(sortFns),
  },
  columns,
  data,
})

for (const row of grid.getRowModel().rows) {
  for (const cell of row.getAllCells()) drawCell(cell)
}

Features are opt-in modules, so a grid that never groups never ships grouping. The render component uses the exact same hooks. See Why headless? and the headless table demo.

See it running

Every demo opens in the browser and has an Edit in StackBlitz button that turns it into a live Vite + Svelte 5 project. Nothing to install.

Trading desk demo 1 million rows demo Spreadsheet with formulas demo
Trading desk
10,000 securities on a 500 ms feed
1 million rows
sort, filter, group and edit, all on
Spreadsheet + formulas
formula cells in a real grid
Kanban board demo Scheduler demo Cell types showcase demo
Kanban board
the same grid, board mode
Scheduler
calendar views off the same data
Cell types
every editor in one grid

All 400+ demos are browsable by category.

What ships free

The MIT package has no license key, no watermark, and no row-count cap.

  • Virtual scrolling over rows and columns. 100k rows x 100 columns scroll smoothly; the 1M-row demo is above.
  • Filtering. Excel-style filter menu, inline filter row, set filter, between operator on numbers and dates, locale-aware text matching.
  • Editing. 18 built-in editorTypes from text and number to date/time pickers, rich-select with typeahead, autocomplete, chips, color, and rating, plus a cellEditor snippet for anything else.
  • Selection. Cell ranges by drag or Shift+arrows, TSV copy/paste, an Excel-style fill handle, drag a range to move it.
  • Views. Row grouping with aggregation, tree data, master/detail, and a spreadsheet layout mode (merged cells and per-cell borders). Formula cells in the free core go through an adapter seam you point at your own hyperformula install; the built-in formula engine and <SvSheet> are in the Suite edition of @svgrid/enterprise.
  • Layout. Row and column pinning, sticky header, drag-to-reorder, resizable rows and columns, a responsive mode for phones.
  • Operations. Find in grid (Ctrl+F), undo/redo, a transaction API, optimistic updates, server-side sort/filter/paging and infinite scroll.
  • Charts. A chart panel on the grid's rows and a standalone SvChart: 29 SVG chart types, zoom, drilldown, technical indicators, export. No charting library.
  • AI helpers. Natural-language filter, smart fill, summarize, classify, anomaly detection, "chart this". You register one provider; nothing is bundled.
  • A Svelte 5 UI suite in the same package (inputs, selects, date/time, overlays, layout), usable standalone or as cell editors.
  • Accessibility and i18n. WAI-ARIA grid roles, full keyboard navigation, RTL, a high-contrast theme, every string overridable through localeText.
  • Production. Bundled types, CSP and Trusted-Types safe rendering, SvelteKit SSR, theming through --sg-* CSS custom properties.

In production

"We were looking for an Excel-like library using SvelteKit. Then I explored your library a lot, mostly everything about SvGrid: cell selection, grabbing cells, updating values in cells. So we used it for an accounting application. It was so easy to integrate. We even built our custom theme, by updating the svgrid.css file which includes all the classes. We found no issues yet, everything just worked for us."

Sikandar Bhide - built an accounting app on SvelteKit

Quick facts

Package @svgrid/grid, peer dependency svelte@^5
License MIT, free for commercial use
Bundle (gzip) ~2.7 KB headless core, ~98 KB full <SvGrid> + ~10 KB CSS; charts, date pickers, menus and export load as separate chunks on first use
SSR Header plus a viewport window of rows in the server HTML; checked in CI by pnpm ssr:check
Demos 400+ demos, each with a StackBlitz button
AI grounding MCP server, llms.txt, Agent Skill

Numbers are measured, not typed: pnpm size and pnpm demos:count re-derive them.

AI-native

Writing SvGrid with Claude, Cursor, or Zed? The MCP server carries the real API surface and its svgrid_check_code tool verifies generated code against it before you see it, so assistants cite real props and events instead of inventing them.

{
  "mcpServers": {
    "svgrid": { "command": "npx", "args": ["-y", "@svgrid/mcp"] }
  }
}

Claude Code gets the server plus an always-on house-style skill from one plugin:

/plugin marketplace add sv-grid/sv-grid
/plugin install svgrid@svgrid

For RAG and custom agents there is llms.txt (index) and llms-full.txt (every doc page). See Use sv-grid docs as LLM context.

svgridmcp

Coming from another grid?

SvGrid AG Grid Community TanStack Table
Svelte 5 runes native Yes No, JS core + wrapper Adapter only
Ships a renderer Yes, plus headless Yes No, headless only
Virtualization built in Yes Yes Bring your own
Master/detail, tree, range selection Free Enterprise only Build it yourself
License MIT core, commercial pack MIT core, commercial pack MIT

Bundle sizes are measured, dated, and published on the comparison pages. Multi-framework teams are better served by AG Grid or TanStack Table; SvGrid is deliberately Svelte-first. Guides: Migrating from AG Grid · Migrating from Handsontable · SvGrid with SvelteKit

Packages

You want to Install License
A data grid in a Svelte 5 / SvelteKit app @svgrid/grid MIT
Excel / PDF export, import, pivot tables, print, advanced filter builder, alert rules, Kanban + scheduler + Gantt renderers, server-side row model + @svgrid/enterprise Commercial, Grid
A real spreadsheet: <SvSheet>, the built-in formula engine, .xlsx / .xls / .ods / .csv read and write + @svgrid/enterprise Commercial, Suite
The grid in React, Vue, Angular, or plain HTML @svgrid/grid-wc MIT
Accurate SvGrid answers from Claude / Cursor / Zed @svgrid/mcp MIT
To copy one UI component into your app, shadcn-style npx @svgrid/ui add <name> MIT
To port an existing svelte-headless-table app npx @svgrid/migrate MIT
A generated CRUD app from your database schema @svgrid/studio Commercial, Suite

@svgrid/enterprise sells in two editions, both covering unlimited production apps. Grid is the enterprise grid. Suite adds the spreadsheet and Studio. Shipping SvGrid to third parties as a component, an SDK, or an app builder they build with needs an OEM license, which is separate from developer seats. See Pricing and Section 4A of the EULA.

Open-source projects under an OSI-approved license get a Suite key free. See Pricing.

FAQ

Does SvGrid work with SvelteKit and SSR? Yes. The server HTML contains the header and a viewport-sized window of rows with real cell values, so crawlers and no-JS clients see content; the remaining rows arrive once the client measures the viewport. Verified in CI against a real server build. See going to production.

Is it free for commercial use? Yes. @svgrid/grid is MIT with no license key, watermark, or row cap. Only the optional @svgrid/enterprise pack is paid.

Does it support Svelte 4? No. SvGrid is Svelte 5 only, on runes and snippets, which is what lets it skip the abstraction layer a cross-version grid needs.

How many rows can it handle? 100k rows x 100 columns on the client, with only the visible window in the DOM. Past that, the free server-side controller pushes sorting, filtering and paging to your backend, and the Enterprise row model adds lazy grouping, tree, pivot, and transactions.

Do I need Tailwind? No. The component ships its own scoped styles and re-themes through --sg-* custom properties. Tailwind works too: Tailwind guide.

Is it accessible? WAI-ARIA 1.2 grid pattern, full keyboard navigation, a screen-reader announcement layer, RTL, and a high-contrast theme. Details in accessibility.

What's not built yet? A custom filter component slot, custom tool panels, a viewport row model over a socket, and non-Gregorian calendars. Full list with effort tags on the roadmap and in missing features.

Who's behind it

SvGrid is built by jQWidgets, the team behind jqwidgets.com and htmlelements.com. We have shipped UI components since 2011 to 5,000+ companies including Samsung, Boeing, NVIDIA, Microsoft, Nokia, and Intel. SvGrid is our Svelte 5 native effort, funded by Enterprise licenses rather than donations.

Contributing and support

License

Mixed. @svgrid/grid, grid-wc, ui, mcp, migrate, sv, and the two create-* scaffolders are MIT (see each package's LICENSE). The Enterprise pack, Studio, and the website are commercial: the source is visible for evaluation, but visibility does not grant a license.

SvGrid™ and sv-grid™ are trademarks of jQWidgets Ltd. The licenses cover source code only and grant no rights to the names or logos.


If SvGrid saved you some work, star the repo. It is the main way other Svelte developers find it, and it tells us which parts to keep building.