A keyboard-driven terminal UI for connecting to and querying many SQL databases, inspired by lazygit.
saulpw/visidata
A terminal spreadsheet multitool for exploring, arranging and transforming tabular data across many file formats.
Open-source alternative to:Microsoft Excel
- Stars
- 9,390
- Forks
- 374
- Open issues
- 36
- Last commit
- 12 hours ago
What is it?
VisiData is a terminal user interface for exploring and arranging tabular data. You open a file or pipe command output into the `vd` command and get an interactive spreadsheet-style view that you can sort, filter, group, and summarize without leaving the shell.
It reads tsv, csv, sqlite, json, xlsx (Excel), hdf5 and many other formats, and additional Python packages enable support for certain formats and sources. Hundreds of commands and options cover frequency tables, column type detection, and quick statistics on the data.
VisiData runs on Linux, macOS, and Windows through WSL, requires Python 3.8 or newer, and installs from PyPI with pip, pipx, or uv.
Key features
- 01Interactive spreadsheet-style view of files and piped command output
- 02Reads csv, tsv, json, sqlite, xlsx, hdf5 and many other formats
- 03Sort, filter, group and summarize columns from the keyboard
- 04Frequency tables and quick statistics for exploratory data analysis
- 05Works in Unix pipelines with other command-line tools
Use cases
- Quickly inspecting a large CSV or JSON file on a remote server over SSH
- Exploring an unfamiliar dataset before writing analysis code
- Summarizing command output in a pipeline without writing a script
- Browsing sqlite databases or Excel workbooks from the terminal
Quick start
- 1
Install VisiData from PyPI
pip3 install visidata - 2
Or try it without installing, using pipx or uv
pipx run visidata - 3
Open a data file in VisiData
vd <input>
Things to know
- Requires Python 3.8+ and, for some formats, extra Python packages.
- Windows is supported only through WSL.
Topics
FAQ
- What is visidata?
- A terminal spreadsheet multitool for exploring, arranging and transforming tabular data across many file formats. VisiData is a terminal user interface for exploring and arranging tabular data. You open a file or pipe command output into the `vd` command and get an interactive spreadsheet-style view that you can sort, filter, group, and summarize without leaving the shell.
- Is visidata free to use? What license does it have?
- visidata is open source under the GPL-3.0 license. Check the license terms before using it in commercial products.
- Is visidata still maintained?
- Actively maintained. The last commit to visidata was on Oct 20, 2026.
- What can I use visidata for?
- Quickly inspecting a large CSV or JSON file on a remote server over SSH Exploring an unfamiliar dataset before writing analysis code Summarizing command output in a pipeline without writing a script Browsing sqlite databases or Excel workbooks from the terminal
- How do I install visidata?
- Install VisiData from PyPI: pip3 install visidata Or try it without installing, using pipx or uv: pipx run visidata Open a data file in VisiData: vd <input>
- Where can I get visidata?
- The source code and installation instructions are on GitHub: https://github.com/saulpw/visidata
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A Python library for printing tabular data as attractive ASCII tables, with HTML, JSON, CSV, LaTeX and other output formats.
A terminal TUI and CLI for browsing and downloading specific files or folders from GitHub, GitLab, Codeberg, Gitea and Forgejo without cloning.
A Textual-based terminal dashboard for creating, editing, pausing and monitoring cron jobs on local machines and remote servers over SSH.
A small Rust CLI that prints CSV, TSV, JSON and SQLite data as stylish, auto-laid-out tables in your terminal.
A tool that removes image backgrounds, usable as a CLI, Python library, HTTP server, or Docker container.