1M+ rows. Any frontend framework. $0 to start.
$ npm install updog Powerful, extensible, and completely native to your stack.
Users describe the problem, the AI writes the fix. Your model, your prompt, your data, your rules.
The SDK runs in the browser. Your backend handles storage, validation, and business logic through event hooks. No data residency on our side.
All features. Every plan. No feature gates.
Canvas rendering, virtual scrolling, Web Worker filtering.
Keep everything in the browser, or delegate to your backend.
Native React component. Web Component wrapper for Vue, Angular, Svelte, or plain HTML.
Strip all Updog branding. Your users never know we're here.
CSV, XLSX, TSV, JSON, XML. Drop a file, get structured data.
Auto-maps imported columns to your schema. Fuzzy matching, synonyms, or your own callback.
Map imported values to the options your columns expect.
Import multiple files into one grid. Each source tracked, toggled, or removed independently.
Second import? Existing rows update in place. New rows append. No duplicates.
Imported file has columns your schema doesn't? Users create them on the fly.
Insert above, insert below, duplicate, delete.
Split, merge, trim, uppercase, lowercase. Bulk operations that stay fast at scale.
Text, number, date picker, select dropdown. Each column gets the right input control.
Click a cell, start typing. Tab, Enter, arrow keys — it works like a spreadsheet.
Cells, ranges, rows. Paste from Excel or Google Sheets. Cut moves data, not just copies.
Drag to fill. Source values tile cyclically across the target range.
Every edit, paste, transform, and delete goes on the stack. Full command history.
Search across all cells. Case-sensitive, exact match, column-scoped. Replace one or all.
Ascending, descending, or clear. Stable sort, locale-aware.
Select lists, number ranges, date ranges. Define per column, users control from the sidebar.
Required, unique, type checks.
Write your own validation function per column.
Declare dependent fields. When one cell changes, related cells re-validate automatically.
Show "$1,000" in the cell. Store "1000" underneath. Formatters are display-only.
Normalize on entry. Trim whitespace, parse numbers, format dates — before they hit the store.
CSV, XLSX, TSV, JSON, XML. Validated and formatted. Ready for your pipeline.
Pin columns so identifiers stay visible while users scroll horizontally.
Every element styled through CSS variables. Match your design system, not ours.
Shadow table for screen readers. ARIA roles, live regions, full keyboard navigation.
Override every string. Right-to-left layout where the locale demands it.
One prop. The grid becomes view-only. No editing, no deletion, no import.
Stream chat responses into the grid. Your model, your prompts, your data stays yours.
Every plan includes every feature.
Perfect for local development and personal side projects.
For small apps ready to ship to production.
Scalable data infrastructure for growing teams.
Complex requirements, compliance, and custom SLAs.
Everything you need to know about Updog.
Yes. The core editor and all validation logic run entirely in the user's browser. We don't store your end-users' data on our servers unless you explicitly configure a proxy or storage hook.
We provide a standard interface for natural language data transformation. You connect it to your own LLM API key. The assistant generates transformation logic based on your schema which is then executed locally.
Absolutely. We expose a comprehensive set of CSS variables and parts that allow you to match your application's design system perfectly, from colors to border radii.
Out of the box, Updog supports CSV, Excel (.xlsx, .xls), JSON, TSV, and XML. You can also paste directly from spreadsheets like Google Sheets or Excel.