xleak-0.1.0 is not a library.
xleak
Expose Excel files in your terminal - no Microsoft Excel required!
Inspired by doxx, xleak brings Excel spreadsheets to your command line with beautiful rendering, powerful export capabilities, and a feature-rich interactive TUI.

Features
Core Functionality
- Beautiful terminal rendering with formatted tables
- Interactive TUI mode - full keyboard navigation with ratatui
- Smart data type handling - numbers right-aligned, text left-aligned, booleans centered
- Multi-sheet support - seamlessly navigate between sheets (Tab/Shift+Tab)
- Multiple export formats - CSV, JSON, plain text
- Blazing fast - powered by
calamine, the fastest Excel parser in Rust - Multiple file formats - supports
.xlsx,.xls,.xlsm,.xlsb,.ods
Interactive TUI Features
- Full-text search - search across all cells with
/, navigate withn/N - Clipboard support - copy cells (
c) or entire rows (C) to clipboard - Formula display - view Excel formulas in cell detail view (Enter key)
- Jump to row/column - press
Ctrl+Gto jump to any cell (e.g.,A100,500,10,5) - Large file optimization - lazy loading for files with 1000+ rows
- Progress indicators - real-time feedback for long operations
- Visual cell highlighting - current row, column, and cell clearly marked
Installation
# Install from source
Usage
Interactive TUI Mode (Recommended)
# Launch interactive viewer
# Start on a specific sheet
# View formulas by default
TUI Keyboard Shortcuts:
↑ ↓ ← →- Navigate cellsEnter- View cell details (including formulas)/- Search across all cellsn/N- Jump to next/previous search resultCtrl+G- Jump to specific row/cell (e.g.,100,A50,10,5)c- Copy current cell to clipboardC- Copy entire row to clipboardTab/Shift+Tab- Switch between sheets?- Show helpq- Quit
Non-Interactive Mode
View a spreadsheet
View a specific sheet
# By name
# By index (1-based)
Limit displayed rows
# Show only first 20 rows
# Show all rows
Export data
# Export to CSV
# Export to JSON
# Export as plain text (tab-separated)
Combine options
# Export specific sheet as CSV
Examples
# Launch interactive viewer
# Quick preview in non-interactive mode
# See specific sheet with limited rows
# Interactive mode with formulas visible
# Export all data from a sheet
Performance
xleak is optimized for both small and large files:
- Small files (< 1000 rows): Instant loading with full eager loading
- Large files (≥ 1000 rows): Automatic lazy loading with row caching
- Memory usage: ~400KB for 10,000 row files
- Loads only visible rows on demand
- Progress indicators for long operations
Comparison to Alternatives
| Tool | Format | Speed | Terminal Native | Interactive | Search | Formulas |
|---|---|---|---|---|---|---|
| xleak | ✅ xlsx/xls/ods | ⚡ Fast | ✅ Yes | ✅ Full TUI | ✅ Yes | ✅ Yes |
| Excel | ✅ xlsx | ❌ Slow startup | ❌ GUI only | ✅ Yes | ✅ Yes | ✅ Yes |
| pandas | ✅ Many | ❌ Slow | ❌ Python required | ❌ No | ❌ No | ❌ No |
| csvlook | ❌ CSV only | ✅ Fast | ✅ Yes | ❌ No | ❌ No | ❌ No |
Related Projects
Looking to view Word documents in the terminal? Check out doxx - a terminal viewer for .docx files with similar TUI capabilities.
Built With
- Rust - for performance and reliability
- calamine - the fastest Excel/ODS parser
- ratatui - terminal user interface framework
- prettytable-rs - beautiful terminal tables
- clap - elegant CLI argument parsing
- arboard - cross-platform clipboard support
License
MIT