| Crates.io | pdfx |
| lib.rs | pdfx |
| version | 0.2.0 |
| created_at | 2025-08-27 00:03:37.661419+00 |
| updated_at | 2025-08-30 07:20:47.592399+00 |
| description | A lightning-fast terminal-native PDF indexing and search toolkit |
| homepage | https://github.com/ionnss/pdfx |
| repository | https://github.com/ionnss/pdfx |
| max_upload_size | |
| id | 1812039 |
| size | 15,132,101 |
pdfx cleanup# Clone the repository
git clone https://github.com/ionnss/pdfx.git
cd pdfx
# Build and install
cargo install --path .
cargo install --git https://github.com/ionnss/pdfx
# Initialize PDF index
pdfx init # Index current directory
pdfx init ~/Documents # Index specific directory
pdfx init ~ # Index entire home directory
# Search indexed PDFs
pdfx search "machine learning" # Search for keyword in filenames
# List all indexed PDFs
pdfx list # Show all PDFs with details
# Export your PDF library
pdfx export # Export all formats to Downloads folder
pdfx export --format json # Export only JSON format
pdfx export --format csv,yaml # Export multiple formats
# Clean up
pdfx cleanup # Remove all indexed data
# 1. First time setup - index your PDFs
pdfx init ~/Documents
# ✅ Scan complete! 170 PDFs found | 2500 files processed | 25 directories skipped
# Indexed 170 PDFs in /Users/user/Library/Application Support/pdfx/db.sqlite
# 2. Browse your PDF library
pdfx list
# 📋 All Indexed PDFs
# 📊 Total: 170 PDFs
# 📄 1. The Rust Programming Language.pdf
# Size: 14.37 MB
# Path: /Users/user/Documents/books/rust.pdf
# Modified: 2025-01-15 10:30:00
# 3. Search your indexed PDFs instantly
pdfx search "rust programming"
# 4. Export your library for sharing or backup
pdfx export
# Exporting 170 PDFs to /Users/user/Downloads/pdfx_exports
# ✅ Generated pdfs.json
# ✅ Generated pdfs.csv
# ✅ Generated pdfs.md
# ✅ Generated pdfs.yaml
# ✅ Generated pdfs.html
# 🎉 Export complete!
# 5. When you're done (optional cleanup)
pdfx cleanup
pdfx supports multiple export formats for your PDF library:
# Export all formats to Downloads folder
pdfx export
# Export specific formats
pdfx export --format json
pdfx export --format csv,yaml
pdfx export --format html
~/Downloads/pdfx_exports/ (or equivalent on your OS)pdfs.json, pdfs.csv, pdfs.md, pdfs.yaml, pdfs.html# macOS
~/Library/Application Support/pdfx/db.sqlite
# Linux
~/.local/share/pdfx/db.sqlite
# Windows
%APPDATA%/pdfx/db.sqlite
pdfx cleanup removes all tracesgit clone https://github.com/ionnss/pdfx.git
cd pdfx
cargo build
cargo run -- --help
src/
├── cli/ # Command-line interface
├── database/ # SQLite database operations
├── indexer/ # PDF file discovery and indexing
├── helpers/ # Utility functions
└── types.rs # Core data structures
We welcome contributions! Here's how you can help:
git checkout -b feature/amazing-feature)git commit -m 'Add amazing feature')git push origin feature/amazing-feature)Q: "Permission denied" errors during scanning
# This is normal on macOS/Linux - system directories are protected
# pdfx will skip these and continue scanning accessible directories
Q: Database seems corrupted or giving errors
pdfx cleanup # Remove database and start fresh
pdfx init # Rebuild index
Q: Where is my data stored?
# View database location after running pdfx init
# Path is shown in success message
# Use `pdfx cleanup` to remove all data
See FUTURE.md for detailed roadmap and feature plans.
This project is licensed under the MIT License - see the LICENSE file for details.
Built with excellence using: