Changelog
Release notes for VizChat — new features, improvements, and fixes shipped in each Beta version.
VizChat is currently in public Beta. Material changes are recorded here as they ship. For finer-grained progress, see the Roadmap.
2026-10-20 · Uploading a PDF no longer costs credits; usage by category
Uploading a PDF no longer costs credits: the text a PDF carries is extracted for free on upload, so it's searchable right away; the first time you open its extracted text or the AI reads it, the whole file goes through text recognition once (charged per page), and the result is kept so reading it again is free. Images are likewise recognized only the first time their text is read. See Documents.
- The AI looks at images directly: when it reads an image in your workspace it sees the image itself, and only recognizes the text in it when it needs that.
- Images in a chat stay as sent: if you later change or delete the original in your workspace, the conversation still shows the one you sent.
- Usage by category: Settings → Usage lists how many credits this period went to chat, voiceover, text recognition and translation. See Credits.
2026-10-20 · A new chat panel: pinning, retention, continuing in a new conversation
The chat panel is rebuilt: replies stream in as they are written, and reasoning and tool calls fold into cards. Actions that need your approval stop on a card — approve or reject it; sending a new message instead counts as rejecting and passes your message to the Agent. When you stop a reply, what was already written is kept.
- Pinning and retention: each workspace can pin up to 10 conversations; conversations with no activity for a year that are not pinned are deleted automatically. See Managing conversations.
- Summarize and continue in a new conversation: right-click a conversation; the original stays.
/clearnow starts a new conversation instead of only clearing the display.- Files in chat go to your workspace: uploaded or pasted files (images included) are saved to the "Chat attachments" folder; text in images is recognized, and charged, only when the Agent needs it.
- "Export All Sessions" now includes each conversation's messages.
2026-10-19 · Auto-play waits for the visuals before turning the page
While a physics simulation, random process or countdown is still running, continuous playback holds the slide until it finishes; the playback bar shows what it is waiting for and how long is left, and you can Skip at any time. You can also ask the AI to wait before a particular line — the narration pauses there and resumes once the visuals finish. Turn off "Wait before turning the page" in a widget's settings to opt out. See Cues.
Video export waits the same way, with a per-page limit on how long it waits, or you can export at narration length instead. See Export.
2026-10-18 · 15 new built-in widgets; custom widgets can use more chart libraries and Vue
Fifteen new built-in widgets, covering maps, simulations and the classroom (see Built-in Widget Types):
- Charts: ECharts Bar Chart, Chart Morph, Vega-Lite Chart, Scientific Plot (error bars, log axes, fits), Contour Plot, plus Data Explorer and Data Facets, which read a CSV or TSV from your workspace.
- Maps: Geo Map (places and routes, flying along with the story) and Choropleth Map (regions colored by value, outlines from your own GeoJSON).
- Simulations and classroom: Physics Sim, Random Process, Quiz Card, Step Solver and Countdown Timer; plus Sketch Diagram, which draws itself stroke by stroke.
Custom widgets: the agent can now draw with ECharts, Vega-Lite, Plotly, p5 and Leaflet, and write widgets in Vue.
2026-10-17 · Open source, declared per version
Whether a widget's source is public is now declared in its package.json and decided version by version:
- Declare it in the package: add
"openSource": trueto thevizchatblock, together with an open-sourcelicense(such as"MIT"). Without it the source stays private; if the two disagree the build fails. On the web, the publish dialog shows what the draft declares and asks you to confirm once more when the source will be public. See Publish a widget from the command line. - Removed:
vizchat widget open-sourceandvizchat widget publish --open-source, and the "Open source code" action in My creations. - Earlier versions stay open: a version whose source was published stays available under its license; a later version can be private again, and from then on the Marketplace shows neither the source download nor "Import to my widgets".
- Every publish is scanned for secrets, not only open-source ones: the compiled widget is public either way.
- Official widgets: Math Coordinate's source is now private; the source of its earlier versions has been taken down from public download. Anyone who already obtained it may keep using it under Apache-2.0.
2026-10-08 · Edit your widgets anywhere
Your widgets' source now lives like your other files, so you can edit it in more places without losing changes:
- No more silent overwrites: if the Agent and the widget editor change the same file at the same time, the later save is stopped and you can load the latest version instead of overwriting it. The editor can now also create, rename, move, delete and upload files (images, fonts and more under
public/). - Edit in a local folder (desktop app): in My creations, sync a widget to a folder and edit it in any editor. If the cloud draft changed meanwhile, your local edits are set aside and the Agent merges them the next time it works on that widget. See Widgets.
- Try before publishing: you can put a widget you haven't published yet into your own boards; publishing the board switches it to the published version. My creations now also shows when a widget has unpublished changes.
2026-10-07 · Widget updates are your call
A widget author's new version no longer changes the presentations and dashboards you have already made:
- Pinned to the version you added: a widget in your document stays on that version; when a newer one exists, opening the file shows a single line saying how many components have updates.
- Look before you switch: fixes can all be applied in one click; feature updates first preview your file with the new versions and change nothing until you confirm, and you can undo afterwards. Pages that may be affected are marked. See Widgets.
- For authors: publishing a version that changes the data format lists what is incompatible with the previous version in the publish confirmation; My creations no longer shows version numbers.
2026-10-02 · Export a storyboard as a video
The desktop app can now export a storyboard, narration included, as an MP4:
- Export video: the properties panel has a new Export video action with resolution, frame rate, and an option to start from the current slide; the export shows progress slide by slide and can be cancelled at any time. The video is rendered and encoded on your computer and matches what you see in the editor; the first export downloads a video encoding component of a few MB. See Export Overview.
- Entry points on the web too: clicking Export video, or Connect a local folder in the workspace menu, guides you to download the desktop app — or, if you already have it, to open the current storyboard there.
- Fix: narration in the editor could silently fail and fall back to silent playback; it works again.
2026-10-02 · Widgets make an entrance
Widgets in a storyboard now enter with the narration instead of popping onto the slide:
- Entrance animations: during playback, a widget that appears with the current line fades in; when you ask the AI for something more deliberate, key conclusions zoom in, follow-up steps rise into place, trend charts and code reveal left to right, and backgrounds appear without animation. Jumping or changing slides does not replay them. See Captions & narration cues.
- Faster first appearance: opening a storyboard now starts preparing the widgets that document uses, so later slides no longer flash blank before their widgets show up.
2026-09-04 · Publishing, one verb
Boards, templates, and widgets now share one publishing model. What used to be "save as template, then list it" — plus a private published state only the author could see — is now a single action:
- Your document is the draft; publishing makes it public. The file in your own workspace is the draft — publishing no longer forks a copy of it — and what you publish is immediately public. There is no in-between state.
- "Template" is now a property of a board: tick "allow remixing" when you publish and others can start their own copy from it. Leave it off and it is simply a piece of work.
- Work pages are indexable, with a transcript, play counts, and share links that can carry the current slide.
- Breaking CLI change: the
--visibilityladder is gone, replaced by a single--open-sourceflag — once publishing means public, the ladder's first two rungs no longer differ. See Publish a widget from the command line. - Taking something down is still reversible, and independent of whether the source is open.
2026-09-02 · Maths on the canvas
Nine new built-in widgets, and a coordinate plane that now builds objects on top of other objects. Maths and statistics were the thinnest part of the built-in set; this release fills them in:
- New widgets: number line, solid geometry (Math 3D), sequence, probability distribution, statistics chart (histogram / box plot / stem-and-leaf), Venn diagram, probability tree, table, and image. See Built-in widget types for what each one is for.
- Objects that depend on objects: in Math Coordinate, midpoints, intersections, points driven along a curve by a parameter slider, marked angles and live measurements recompute and follow whatever they were built from. An object whose dependencies are gone is dimmed and dashed rather than quietly disappearing.
- Conic sections and calculus: ellipses, hyperbolas and parabolas, with foci, directrices, asymptotes and vertices as separate objects built on top of them. The derivative f′, tangent lines, extrema, monotonic intervals, the common tangents of two curves and a live count of how many times two curves meet are built the same way — so a cue can reveal one of them at a time.
- Axis units for maths: either axis can tick in multiples of π (
π/2,3π/2) or in fractions (1/2,2/3), with the grid following the ticks. Complex mode relabels the axes Re / Im and writes points asa + bi. - Pinned widgets can be resized per slide: the per-slide override row in the properties panel now covers size alongside hidden and position, and an edit re-renders straight away.
2026-08-25 · Marketplace in your language
Marketplace content translation. Authors write widget names, descriptions, tags, and docs in their own language; the platform translates them for readers:
- Automatic translation: marketplace lists and detail pages show names and descriptions in your interface language. Widget docs translate on demand — the original stays visible while the translation is prepared, then swaps in.
- Language picker on detail pages: choose any of 47 target languages. Signed-out visitors can read the preflight set (English and Chinese); signing in unlocks the rest — translations you trigger are billed to your credits, and anyone after you reads them for free.
- Search across languages: searching in Chinese now finds English-authored widgets (and vice versa) through the translation index.
- "Translate automatically" preference: turn default translation on or off per account from any detail page.
2026-08-19 · Beta v1.1
Widget authoring toolchain. A redesigned CLI contract and a license change for the @vizchat/* packages:
- CLI visibility is now a ladder (breaking):
publish --listand--open-sourceare replaced by a single--visibility unlisted|listed|source-open. The old pair could express combinations the server rejects — the ladder makes those unrepresentable. See Publish a widget from the command line. - Dry runs before the irreversible steps:
publish --dry-runprints the exact upload manifest and stops before any server write;tts --dry-runstops at the quote. In non-interactive shellsttsnow requires an explicit--yesinstead of treating silence as consent. - Machine-readable CLI output: the last line of stdout is always JSON and all narration goes to stderr, and each exit code maps to a distinct next action —
2fix the arguments,3log in again,4fix the code,5re-run with confirmation,6retry — so scripts and agents can branch without parsing prose. - License change for the
@vizchat/*packages: from0.3.0they ship under a proprietary license instead of Apache-2.0. They stay free to use for building and selling widgets, including commercially; redistribution of the packages themselves and derivative works are not permitted. Versions0.2.xalready on npm remain Apache-2.0.
2026-04-22 · Beta v1.0
First public Beta. Brand rollout, documentation site, and billing scaffolding:
- VizChat brand launch: external naming, domains, email, landing page, and error pages all switched to VizChat.
- Fumadocs documentation site: a fresh
/docsroute covering Getting Started, Features (AI Chat / Canvas / Widgets / Storyboard / Workspace), Concepts, FAQ, Changelog, and Roadmap. Bilingual EN / ZH switching and allms-full.txtaggregate export are both supported. - Public Pricing page: four tiers (Free / Starter / Pro / Max) with comparison table and structured FAQ, browsable without signing in.
- Starter free for the first month: auto-activated on signup — no credit card required. At the end of the first month, choose to renew or revert to Free.
- Dual GCP project architecture:
vizchat-stagingandvizchat-prodare physically isolated. The git SHA is automatically injected into the Sentry release during deploy, so errors link back to the exact commit.