Vibeleaderboard
Index / tool
Visit arxiv.org
Category
Developer Tools
Rank
Pricing
Open Source
Type
TOOL
Builder
microsoft
Latest release
0.8b1
Date

About

Microsoft Research's AI-assisted visualization tool — describe the chart you want in plain English, drag fields in, and it generates the data transforms and renders the visualization.

What it does

Data Formulator is a browser-based workspace for exploratory analysis. It ingests files, screenshots, text, websites, and connected data systems, then keeps questions, explanations, tables, and charts in a branching conversation. Analysts can refine visual styles, preserve workspaces, and assemble reports.

Why it's ranked here

The compelling part is the complete analysis loop, not merely chart generation. Source connectors, persistent workspaces, editable branches, chart refinement, and reports keep exploration inspectable. Its research-prototype label, large dependency surface, and deployment safety caveats make it better suited to evaluation than unquestioned production adoption.

What's good

It accepts unusually varied inputs and supports many governed systems, including relational databases, document stores, object storage, query engines, and Databricks. Flint compiles semantic chart specifications into multiple rendering systems. Persistent attachments and conversation branches let analysts revisit assumptions instead of restarting an exploration.

Tradeoffs

Local installation requires Python 3.11 or newer and pulls in a broad set of database, cloud, authentication, and analysis packages by default. Browser rendering needs an optional Playwright installation. Multi-user deployments require an isolated sandbox, yet unsafe sandbox configuration currently produces a critical warning rather than blocking startup.

How to use it well

Use it when analysts need a visual, conversational workspace spanning source discovery, exploration, chart refinement, and report creation. Platform teams can configure shared data connections, while analysts branch and preserve findings. It is not presented as a general-purpose data engineering system or an embeddable analytics library.

Technical notes+

pyproject.toml packages a Python 3.11+ Flask application from py-src, exposes the data_formulator console script, and bundles runtime skill definitions. package.json defines a private React 18 and TypeScript frontend built with Vite, with Redux persistence, Material UI, Vitest, Vega-Lite, ECharts, Chart.js, and Flint dependencies. src/index.tsx mounts the React application with Redux persistence. src/i18n/index.ts initializes English and Chinese resources. src/api/knowledgeApi.ts shows an internal JSON-over-HTTP client for knowledge CRUD, search, and workflow distillation. docs/dev-guides/8-path-safety.md specifies confined path resolution, deployment restrictions for local filesystem loaders, isolated sandboxes for multi-user operation, and names backend security tests.

Observed

License
MIT
Languages
Python backend with a TypeScript and React frontend
Packaging
Installable Python package with a console script; frontend is a private Vite package
Install surfaces
uvx, pip, Docker Compose, and GitHub Codespaces
Interface
Locally served browser application with command-line launch options
Model providers
OpenAI, Azure, Ollama, and Anthropic through LiteLLM
Platform requirement
Python 3.11 or newer
Testing structure
Vitest frontend scripts and documented pytest backend security tests

Read from README.md, package.json, pyproject.toml, requirements.txt, src/index.tsx, src/icons.tsx, src/types.d.ts, src/app/App.tsx, src/i18n/index.ts, src/app/AuthButton.tsx, src/api/knowledgeApi.ts, src/i18n/locales/index.ts, src/i18n/locales/en/index.ts, src/i18n/locales/zh/index.ts, docs/dev-guides/8-path-safety.md.

What it can do

  • Generate data visualizations from plain English descriptions

    Natural language description of desired chartData visualization/chart

  • Create data transformations automatically

    Raw data and visualization requirementsTransformed data ready for visualization

  • Map data fields to visualization elements

    Data fields dragged by userConfigured chart with mapped data elements

  • Render interactive visualizations

    Processed data and chart specificationsInteractive data visualization

  • Interpret user intent for chart creation

    User's natural language requests and data contextChart configuration and parameters

Tags

visualizationaidatamicrosoftcharts

Tech Stack

Node.jsPythonDockerTypeScriptVite

Media

Data Formulator

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.