vizro

Vizro is a low-code toolkit for building high-quality data visualization apps.

2959
172
Python



Vizro logo

Vizro is a low-code toolkit for building high-quality data visualization apps

Python version PyPI version License Documentation OpenSSF Best Practices

Documentation | Get Started | Vizro examples gallery

Gif to demonstrate Vizro features

What is Vizro?

Vizro is an open-source Python-based toolkit.

Use it to build beautiful and powerful data visualization apps quickly and easily, without needing advanced engineering or visual design expertise.

Then customize and deploy your app to production at scale.

In just a few lines of simple low-code configuration, with in-built visual design best practices, you can quickly assemble high-quality, multi-page prototypes, that are production-ready.

Every Vizro app is defined by a simple configuration, using these high-level categories:

  • Components: charts, tables, cards, KPI indicators, forms and more.
  • Controls: filters and parameters, using a range of selectors such as drop-down menus and sliders.
  • Actions: interactions between components, drill-throughs, export functionality and more.
  • Layouts: grid layouts or flexible containers, with a range of pre-set styles.
  • Navigation: a range of app layout and navigation settings, including nested page hierarchies.

Configuration can be written in multiple formats including Pydantic models, JSON, YAML or Python dictionaries for added flexibility of implementation.

Optional high-code extensions enable almost infinite customization in a modular way, combining the best of low-code and high-code - including bespoke visual formatting and custom components.

Visit our “How-to guides” for a more detailed explanation of Vizro features.

Why use Vizro?

The benefits of the Vizro toolkit include:


Vizro helps you to build data visualization apps that are:

Quick and easy

Build apps in minutes. Use a few lines of simple configuration (via Pydantic models, JSON, YAML, or Python dictionaries) in place of thousands of lines of code.

Beautiful and powerful

Build high-quality multi-page apps without needing advanced engineering or visual design expertise. Use powerful features of production-grade BI tools, with in-built visual design best practices.

Flexible

Benefit from the capabilities and flexibility of open-source packages. Use the trusted dependencies of Plotly, Dash, and Pydantic.

Customizable

Almost infinite control for advanced users. Use Python, JavaScript, HTML and CSS code extensions.

Scalable

Rapidly prototype and deploy to production. Use the in-built production-grade capabilities of Plotly, Dash and Pydantic.

Visit “Why should I use Vizro?” for a more detailed explanation of Vizro use cases.

When to use Vizro?

Use Vizro when you need to combine the speed and ease of low-code Python tools, with production capabilities of JavaScript and BI tools, and the freedom of open source:

  • Have an app that looks beautiful and professional by default.
  • Enjoy the simplicity of low-code, plus the option to customize with code almost infinitely.
  • Rapidly create prototypes which are production-ready and easy to deploy at scale.

How to use Vizro?

Vizro framework

Low-code framework for building dashboards.

The Vizro framework underpins the entire Vizro toolkit. It is a Python package (called vizro).

Visit the documentation for more details.

Vizro visual vocabulary

Chart examples.

The visual vocabulary helps you to decide which chart type to use for your requirements, and offers sample code to create these charts with Plotly or embed them into a Vizro dashboard.

Visit the visual vocabulary to search for charts or get inspiration.

Vizro examples gallery

Dashboard examples.

The dashboard examples gallery enables you to explore Vizro in action by viewing interactive example apps. You can copy the code to use as a template or starter for your next dashboard.

Visit the dashboard examples gallery to see the dashboards in action.

Vizro-MCP

A Model Context Protocol (MCP) server for Vizro.

Vizro-MCP works alongside an LLM to help you create Vizro dashboards and charts. It provides tools and templates to create a functioning Vizro chart or dashboard step-by-step.

Compatible with MCP-enabled LLM clients such as Cursor or Claude Desktop.

Vizro MCP Demo

Vizro-AI

Use LLMs to generate charts and dashboards.

Vizro-AI dashboard generation is no longer actively developed and is superseded by Vizro-MCP. Vizro-AI supports only chart generation from version 0.4.0.

Vizro-AI is a separate package (called vizro_ai) that extends Vizro to incorporate LLMs. Use it to build interactive Vizro charts and dashboards, by simply describing what you need in plain English or other languages.

Visit the Vizro-AI documentation for more details.

Gif to demonstrate Vizro-AI

Installation and first steps

pip install vizro

See the installation guide for more information.

The get started documentation explains how to create your first dashboard.

Packages

This repository is a monorepo containing the following packages:

Folder Version Documentation
vizro-core PyPI version Vizro Docs
vizro-ai PyPI version Vizro-AI Docs
vizro-mcp PyPI version Vizro-AI Docs

Community and development

We encourage you to ask and discuss any technical questions via the GitHub Issues. This is also the place where you can submit bug reports or request new features.

Want to contribute to Vizro?

The contributing guide explains how you can contribute to Vizro.

You can also view current and former contributors here.

Want to report a security vulnerability?

See our security policy.

License

vizro is distributed under the terms of the Apache License 2.0.