doxx ๐
Beautiful .docx viewing in your terminal โ no Microsoft Word required
doxx is a lightning-fast, terminal-native document viewer for Microsoft Word files. Built with Rust for performance and reliability, it brings Word documents to your command line with beautiful rendering, smart table support, and powerful export capabilities.
โจ Features
Document viewing
๐จ Beautiful terminal rendering with syntax highlighting and formatting
with syntax highlighting and formatting ๐ Professional table display with smart alignment and Unicode borders
with smart alignment and Unicode borders ๐ Nested list support with proper indentation and multi-level hierarchy
with proper indentation and multi-level hierarchy ๐ Full-text search with highlighting and context
with highlighting and context ๐ Document outline for quick navigation
for quick navigation ๐ฏ Multiple view modes โ document, outline, search, and help
Smart table support
๐ Advanced table parsing with automatic header detection
with automatic header detection ๐ฏ Intelligent alignment โ numbers right-aligned, text left-aligned, booleans centered
โ numbers right-aligned, text left-aligned, booleans centered ๐ฑ Data type detection for currency, percentages, dates, and more
for currency, percentages, dates, and more ๐จ Professional ASCII rendering with scalable Unicode borders
with scalable Unicode borders ๐ Search within tables across headers and cell content
Copy & clipboard
๐ Copy to clipboard - Copy rendered content directly from the terminal UI
- Copy rendered content directly from the terminal UI ๐ฏ Context-aware copying - Different content based on current view: Document view : Copy full formatted document with headings, lists, and tables Outline view : Copy document structure with indented headings Search view : Copy search results with context
- Different content based on current view: ๐ฅ๏ธ Cross-platform : Works on Windows, macOS, and Linux (X11/Wayland)
: Works on Windows, macOS, and Linux (X11/Wayland) โ
Visual feedback with status messages and error handling
Export & integration
๐ Markdown export with proper table alignment indicators
with proper table alignment indicators ๐ CSV extraction for data analysis workflows
for data analysis workflows ๐ Plain text output for piping to other tools
output for piping to other tools ๐๏ธ JSON export with full document structure
with full document structure โก CLI-friendly for scripts and automation
๐ Quick start
Installation
# Install from source (requires Rust) git clone https://github.com/bgreenwell/doxx.git cd doxx cargo install --path .
Basic usage
# View a document doxx quarterly-report.docx # Start with outline view doxx document.docx --outline # Search for specific content doxx contract.docx --search " payment terms " # Export to different formats doxx spreadsheet.docx --export csv > data.csv doxx report.docx --export markdown > report.md doxx document.docx --export json > structure.json # Force interactive UI (useful for development/testing) doxx document.docx --force-ui # Get help doxx --help
๐ฎ Terminal UI
Navigate documents with intuitive keyboard shortcuts and mouse support:
Input Action โ / k or mouse wheel up Scroll up โ / j or mouse wheel down Scroll down Page Up / Page Down Page navigation Home / End Jump to start/end o Toggle outline view s Open search c Copy content to clipboard F2 Copy content (in search view) n / p Next/previous search result h / F1 Toggle help q Quit
๐ป Examples
Document analysis
# Quick document overview doxx annual-report.docx # Find all tables and export as CSV doxx financial-data.docx --export csv # Search for specific terms with context doxx legal-contract.docx --search " liability " # Navigate large documents with outline doxx technical-manual.docx --outline
Copy & clipboard workflow
# Interactive document review with copy doxx quarterly-report.docx # Navigate to important section, press 'c' to copy to clipboard # Paste into email, Slack, or other applications # Copy search results for sharing doxx meeting-notes.docx --search " action items " # Press F2 to copy all search results with context # Copy document structure for planning doxx technical-spec.docx --outline # Press 'c' to copy hierarchical outline
Pipeline integration
# Extract text for further processing doxx meeting-notes.docx --export text | grep " action items " # Convert Word tables to CSV for analysis doxx survey-results.docx --export csv | python analyze.py # Get document metadata as JSON doxx report.docx --export json | jq ' .metadata '
๐๏ธ Architecture
Built with modern Rust for maximum performance:
Document parsing : docx-rs for robust .docx file handling
: for robust file handling Terminal UI : ratatui for beautiful cross-platform interfaces
: for beautiful cross-platform interfaces Text processing : unicode-segmentation for proper Unicode support
: for proper Unicode support Search: regex for powerful pattern matching
๐ฏ Why doxx?
doxx fills a critical gap: there's no good way to view Word documents in the terminal. Current solutions force you to choose between losing all formatting or switching to GUI applications.
The Problem with Existing Tools
Tool Type DOCX Support Formatting Tables Interactive docx2txt Text extractor โ
Basic โ Lost โ Mangled โ No antiword Legacy converter โ .doc only โ Lost โ Basic โ No pandoc Universal converter โ
Via chain โ Lost โ Basic โ No glow Markdown viewer โ Wrong format โ
Rich โ
Good โ
Yes Microsoft Word GUI application โ
Native โ
Rich โ
Perfect โ
Yes
What doxx Brings
doxx is the first terminal-native DOCX viewer that preserves formatting and provides an interactive experience:
Feature doxx Best Alternative Rich DOCX viewing โ
Native with formatting โ Plain text only Smart table rendering โ
Aligned with borders โ Unformatted text Interactive navigation โ
Full TUI interface โ Pipe to less Terminal integration โ
SSH-friendly, scriptable โ GUI required Multiple exports โ
Markdown, CSV, JSON โ Text only
vs. Microsoft Word
โก Instant startup (50ms vs 8+ seconds)
(50ms vs 8+ seconds) ๐พ Minimal memory (15MB vs 500MB+ RAM)
(15MB vs 500MB+ RAM) ๐ฐ Zero licensing costs ($0 vs $149+ per license)
($0 vs $149+ per license) ๐ SSH-friendly for remote server access
for remote server access ๐ง Scriptable for automation workflows
vs. Text Extractors (docx2txt, antiword)
๐จ Preserves formatting (bold, italic, structure)
(bold, italic, structure) ๐ Intelligent table rendering with proper alignment
with proper alignment ๐ฅ๏ธ Interactive interface vs. static text output
vs. static text output ๐ Built-in search with highlighting and navigation
with highlighting and navigation ๐ค Smart exports with format-aware output
vs. Terminal Document Viewers (glow, bat, mdcat)
๐ Native DOCX support vs. markdown/code only
vs. markdown/code only ๐ข Business document focused vs. developer files
vs. developer files ๐ Advanced table intelligence for spreadsheet-like data
for spreadsheet-like data ๐ Multiple export formats for downstream processing
๐ ๏ธ Development
Building from source
# Clone the repository git clone https://github.com/bgreenwell/doxx.git cd doxx # Build and run cargo build --release cargo run -- --help # Run tests cargo test
Project structure
src/ โโโ main.rs # CLI argument parsing and entry point โโโ document.rs # Document parsing and table structures โโโ ui.rs # Terminal interface and rendering โโโ export.rs # Export functionality for different formats โโโ ai.rs # AI integration framework (coming soon)
๐ง Roadmap
Coming soon
๐ค AI integration for document summarization and Q&A
for document summarization and Q&A ๐ Hyperlink support for navigation within documents
for navigation within documents ๐ท Image descriptions with AI-generated alt text
with AI-generated alt text ๐จ Themes and customization for personalized viewing
for personalized viewing ๐ Web interface for browser-based viewing
AI-powered features (planned)
๐ Document summarization with key points extraction
with key points extraction โ Interactive Q&A about document content
about document content ๐ Smart data extraction for action items and deadlines
for action items and deadlines ๐ Semantic search beyond keyword matching
beyond keyword matching ๐ก๏ธ Privacy-first with local AI model support
๐ค Contributing
Contributions are welcome! Please feel free to submit a pull request or open an issue.
Fork the repository Create a feature branch ( git checkout -b feature/amazing-feature ) Commit your changes ( git commit -m 'Add amazing feature' ) Push to the branch ( git push origin feature/amazing-feature ) Open a pull request
๐ License
This project is licensed under the MIT License โ see the LICENSE file for details.
๐ Acknowledgments
Built with the amazing Rust programming language
Terminal UI powered by ratatui
Document parsing with docx-rs
Inspired by Charm's Glow for beautiful CLI rendering
Influenced by the terminal-first development philosophy
Made with โค๏ธ for developers who live in the terminal