A Spreadsheet in Your Terminal: Meet Vex
If you work with data, you've been there. You need to quickly check a CSV file, verify some numbers in an Excel sheet, or peek at a dataset without firing up a heavyweight application or importing it into a database. Opening a spreadsheet app can feel slow and clunky for a simple task, and plain cat or less just doesn't cut it for structured data. What you need is something fast, purpose-built, and right where you already are: in the terminal.
Enter Vex. It's a beautiful, fast, and feature-rich terminal-based Excel and CSV viewer built with Go. It turns your terminal into a fully-functional spreadsheet viewer, letting you navigate, sort, and explore tabular data without ever leaving your command line.
What It Does
Vex is a TUI (Terminal User Interface) application that opens .csv, .tsv, and .xlsx files directly in your terminal. It renders the data in a clean, readable grid, complete with proper cell alignment, headers, and navigation. Think of it as a lightweight, keyboard-driven data inspector that lives in your shell.
Why It's Cool
The beauty of Vex is in its thoughtful design and performance. It's not just a simple table printer. Here are a few features that make it stand out:
- Blazing Fast: Written in Go, it opens and renders large files almost instantly. No more waiting for a desktop application to boot.
- Familiar Vim-like Navigation: Move around with
h,j,k,l. Jump to the top or bottom of the sheet withggandG. It feels intuitive if you live in your terminal editor. - Sorting on the Fly: Need to reorder data? You can sort columns in ascending or descending order directly from the interface.
- Excel Support: It doesn't just handle CSVs. It can read native
.xlsxfiles, which is a huge win for anyone who receives data in that common format. - Clean Aesthetics: The UI uses color and borders effectively to make the data readable, not just a wall of monospace text. It's functional and pleasant to look at.
It's the perfect tool for developers, data engineers, or sysadmins who need to validate data pipelines, check export files, or simply view a dataset during a scripting session.
How to Try It
Getting started with Vex is straightforward. You'll need Go installed on your machine.
-
Install it using
go install:go install github.com/CodeOne45/vex-tui@latestThis will place the
vexbinary in your$GOPATH/bin(make sure that's in your systemPATH). -
Run it by pointing it at a file:
vex your-data.csvOr for an Excel file:
vex your-spreadsheet.xlsx
Once it's open, press ? to bring up the help menu and see all the available keybindings for navigation and sorting.
Final Thoughts
Vex solves a specific, common problem with elegance and speed. It has quickly become one of those utilities I don't realize I need until I start using it regularly. It eliminates a small but frequent context switch, keeping you in your development flow. If you regularly touch data files from the command line, it's absolutely worth adding to your toolkit. It's a great example of a focused tool doing one job exceptionally well.
Check out the project, star it, or contribute over on GitHub.
@githubprojects