Open-source project
holoviz/holoviz avatar
holoviz/holoviz

HoloViz, eight Python visualisation projects under one roof

High-level tools to simplify visualization in Python.

915 stars128 forksShellBSD-3-Clause

At a glance

What is it?
The holoviz repository is not a library but an entry point to an ecosystem: eight projects that cover exploration, declarative visualisation, big-data rendering, geospatial work and dashboards, all built to work together. It also holds the governance model and the community channels, which is where the interesting content for an adopter actually is.
Who is it for?
HoloViz suits a Python team that wants plotting, notebook analysis and dashboard deployment to share one API and one parameter model instead of three unrelated libraries, and it does not suit a team that only needs a static chart from a single library.
Can I use it commercially?
Yes. BSD-3-Clause is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 116 days ago.
What is it written in?
Mainly Shell, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on October 23, 2026, and from our analysis. They are not legal advice.

Editorial analysis

This repository is a signpost, not a codebase

The README answers the question of what this repository is for, and the answer is unusual: it provides an entry point for the HoloViz ecosystem.

That means there is no library here to import. The top level of the repository holds a doc/ directory, an examples/ directory and a binder/ directory, a CODE_OF_CONDUCT.md, a GOVERNANCE.md, a LICENSE.txt, a pytest.ini and a.flake8, plus the doc/ and examples/ directories that make up the website content. The primary language of the repository is listed as Shell, which is a hint that the project is a site and a collection of notebooks rather than a package.

The README says the best way to experience the repository is on HoloViz.org, and lists five things the website provides: an introduction to the organisation and its projects, guidance on which tool to start with for a given use case, demonstrations of several tools working in a single workflow, communication channels and a FAQ for community members, and governance, roadmap and contributing information for developers.

So the repository is where the ecosystem is explained and governed, and the code lives in eight separate project repositories. That distinction is worth holding onto when you evaluate the project, because the tags on this repository, v0.16.2 in March 2023 among them, version the website rather than the libraries you would install.

Eight projects covering different parts of the same job

The core projects are listed with a one-line description each, and the list is best read as a map of the workflow rather than a catalogue.

Panel creates interactive dashboards in Jupyter notebooks or standalone apps. hvPlot is for quickly and interactively exploring data with a familiar API. HoloViews is for visualizing while you analyze by declaring data properties. GeoViews extends HoloViews for geographic data. Datashader renders big data images in a browser. Lumen constructs no-code dashboards from simple YAML specifications. Colorcet is for plotting with perceptually based colormaps. Param is for declaratively coding in Python.

Three of those are foundations rather than applications. Param, which the project describes as declarative coding in Python, supplies the parameter model, and HoloViews builds its visualisation model on declaring data properties, with GeoViews layering geographic data on top of it. The applications sit on that base: hvPlot for quick exploration, Panel for dashboards and apps, Lumen for the no-code YAML route, and Datashader and Colorcet for the rendering problems that appear when the data is large or the palette needs to be readable.

That structure is why the ecosystem is worth learning rather than a single package to install. The same declarative parameter objects describe a plot in a notebook, a widget in a dashboard and a component in a deployed app, so a workflow that starts as exploration does not have to be rewritten when it becomes a dashboard.

The projects are designed to be combined

The README's third listed purpose is demonstrations of using multiple HoloViz tools in a single workflow, and the examples/ directory backs that up with a tutorial/ subdirectory, a learn/ directory, data and assets folders, and output files. The examples directory also carries its own environment definition in pixi.toml with a pixi.lock, which is the modern approach to pinning an environment for a set of example notebooks.

The pattern this supports is the one the ecosystem was assembled around. You explore a dataset with hvPlot while working in a notebook, you escalate to HoloViews when you want the plot to be an object with declared properties rather than a call that draws something, you add GeoViews when the data has a geography, you reach for Datashader when the row count is past what a browser can draw, and you wrap the result in Panel when it needs to become a dashboard with widgets. Lumen and Colorcet sit alongside as alternatives for different teams, one for people who would rather describe a dashboard in YAML than write it, and one for anyone who has concluded that the default palette is not readable.

The honest caveat is that combining them is not free. Each layer adds an abstraction over the one below, and a team that only needs a static chart from a data frame is paying for a lot of machinery it will never use. The README's own guidance is a guard against that: check the background guide for your data type to find which tools to focus on, rather than adopting everything.

Governance and fiscal sponsorship are part of the project

Two organisational facts are stated in the README and they matter for anyone putting a dependency on this stack.

HoloViz uses a custom open governance model, described in the GOVERNANCE.md file at the root of the repository, and it is fiscally sponsored by NumFOCUS, a 501(c)(3) non-profit charity in the United States, so donations to the project are tax-deductible in the way the README explains. The project also asks for contributions to pay for developer time, professional services, travel, workshops and other needs. The contributor code of conduct is based on the Contributor Covenant 2.1.

Custom governance is a real trade-off rather than a badge. It means decisions about direction are made through the organisation's own process rather than by a single owner or a foundation, which is the arrangement that keeps a multi-project ecosystem from drifting toward one dominant maintainer. It also means the rules are ones you have to read in the repository rather than ones you can assume from a familiar licence.

On licensing, the README is careful. All HoloViz projects are freely available for commercial or non-commercial use according to a permissive open-source license as described in each project's website. The umbrella repository carries a BSD-3-Clause licence, and LICENSE.txt is at the root, but the sentence to notice is as described in each project's website, because the individual libraries are the things you actually depend on and each states its own terms.

The status badges in the README show a test suite workflow on the main branch, a docs site served from a gh-pages branch, a status dashboard at status.holoviz.org, and a Binder badge that opens the setup notebook from the tutorial directory.

Where to start, and what the repository does not contain

The getting started section is short. The recommendation is to start with the tutorial at holoviz.org/tutorial, and, if you already have a problem involving a particular data type, to check holoviz.org/background for guidance on which tools to focus on. There are no installation commands here, and that is correct rather than an omission, because there is no package in this repository to install. The eight libraries live in their own repositories and are installed from their own package indexes.

What the repository does contain is the evidence for the choices. The examples/ directory holds a tutorial folder with the setup notebook that the Binder badge opens, a learn/ directory, shared assets and data folders, and generated output. The doc/ directory holds the website source that becomes holoviz.org, including the background and tutorial pages the README points you at.

That makes the repository the right place to answer questions about which project fits which job, how the pieces compose and how the project is run, and the wrong place to answer questions about a specific library's API or its release cadence. Those live in the eight project repositories, each with its own documentation site, and the ecosystem is a moving set of projects rather than a single thing with one release train.

The tag history here tells that story quietly. The listed releases are v0.16.2 from 2023-03-22, v0.11.5 and v0.11.4 both from June 2020, which are the website's own versions, and the last push to the repository was on 2026-06-29.

One library versus a composed stack

The alternative to the HoloViz ecosystem is a single general-purpose plotting library, used directly, with the dashboard work done separately.

The difference in approach is where the coupling lives. A single library gives you one API and one mental model, and the cost of every extra requirement is that you write it yourself: interactivity beyond the library's defaults, a dashboard shell, a way to share results, a way to keep the widget state, and a separate mechanism for the geographic and large-data cases.

The HoloViz stack moves those costs into the ecosystem. You get interactivity, dashboards, declarative parameters, geographic support and big-data rendering from packages that were designed to share a parameter model, so a plot object can move from a notebook into a dashboard without being rebuilt. The price is the abstraction depth and the number of packages, each of which is separately versioned and separately licensed.

The practical test is whether your work stays in a notebook. If it does, hvPlot and HoloViews may be all you need from this ecosystem, and Datashader or Panel may never be needed. If your work has to end up as an application with widgets, shared state and a deployment story, the ecosystem's advantage grows, and so does the number of pieces you now own.

One more consideration for a team choosing between the two: the HoloViz projects are separate projects with separate release cycles and separate documentation sites, so adopting the stack means adopting a set of moving parts rather than one library with a single upgrade path.

Editorial conclusion

HoloViz suits a Python team that wants plotting, notebook analysis and dashboard deployment to share one API and one parameter model instead of three unrelated libraries, and it does not suit a team that only needs a static chart from a single library. Before adopting it, read the background guide at holoviz.org/background to pick which of the eight projects your data type calls for, since installing the whole ecosystem is rarely the right first step, and check the licence of each project separately, because the permissive terms are described per project rather than for the umbrella.

Frequently asked questions

What is the holoviz repository?

It is the entry point for the HoloViz ecosystem, providing an introduction to the organisation and its projects, guidance on which tool to start with, demonstrations of tools combined in one workflow, community channels and a FAQ, and the governance, roadmap and contributing guide. The code lives in eight separate project repositories.

Which projects make up the HoloViz ecosystem?

Panel for interactive dashboards in notebooks or standalone apps, hvPlot for quick interactive exploration, HoloViews for visualizing while you analyze, GeoViews for geographic data, Datashader for rendering big data images in a browser, Lumen for no-code dashboards from YAML specifications, Colorcet for perceptually based colormaps, and Param for declarative coding in Python.

How do I get started with HoloViz?

The README recommends starting with the tutorial at holoviz.org/tutorial, and if you already know your data type, checking holoviz.org/background for guidance on which tools to focus on. The repository itself contains no installable package, so there are no installation commands to run here.

What licence applies to the HoloViz projects?

All HoloViz projects are freely available for commercial or non-commercial use according to a permissive open-source license as described in each project's website. The umbrella repository carries a BSD-3-Clause licence with LICENSE.txt at the root, but the terms that matter are the ones published by each individual project.

How is HoloViz governed?

HoloViz uses a custom open governance model documented in the GOVERNANCE.md file in the repository, and it is fiscally sponsored by NumFOCUS, a 501(c)(3) non-profit charity in the United States, so donations to the project are tax-deductible. The project also has a Contributor Covenant 2.1 code of conduct.

Official sources

  1. holoviz/holoviz on GitHub
  2. License: BSD-3-Clause
  3. Project website
  4. README
  5. Releases
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/holoviz-holoviz.svg)](https://hysenlabs.com/projects/holoviz-holoviz)

Was this useful?