https://github.com/itsjunetime/tdf
A tui-based PDF viewer
https://github.com/itsjunetime/tdf
Last synced: 7 days ago
JSON representation
A tui-based PDF viewer
- Host: GitHub
- URL: https://github.com/itsjunetime/tdf
- Owner: itsjunetime
- License: agpl-3.0
- Created: 2024-05-26T22:59:25.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-03-23T18:57:41.000Z (28 days ago)
- Last Synced: 2025-04-07T02:03:32.905Z (14 days ago)
- Language: Rust
- Size: 10.8 MB
- Stars: 1,035
- Watchers: 8
- Forks: 24
- Open Issues: 17
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- awesome-useful-projects - <img src="https://icon.horse/icon/github.com" height="20px" align="center"/>/itsjunetime/tdf - TUI-based PDF viewer (CLI/TUI Apps / Other)
- awesome-useful-projects - <img src="https://icon.horse/icon/github.com" height="20px" align="center"/>/itsjunetime/tdf - TUI-based PDF viewer (Jump To / CLI/TUI Apps)
README
# `tdf`
A terminal-based PDF viewer.
Designed to be performant, very responsive, and work well with even very large PDFs. Built with [`ratatui`](https://github.com/ratatui-org/ratatui).

## Features:
- Asynchronous Rendering
- Searching
- Hot reloading
- Responsive details about rendering/search progress
- Reactive layout## To Build
First, you need to install the system dependencies. This will generally only include `libfontconfig`. If you're on linux, these will probably show up in your package manager as something like `libfontconfig1-devel` or `libfontconfig-dev`.If it turns out that you're missing one of these, it will fail to compile and tell you what library you're missing. Find the development package for that library in your package manager, install it, and try to build again. Now, the important steps:
1. Get the rust toolchain from [rustup.rs](https://rustup.rs)
2. Clone the repo and `cd` into it
3. Run `cargo build --release`## Why in the world would you use this?
I dunno. Just for fun, mostly.
## Can I contribute?
Yeah, sure. Please do.
Please note, though, that all contributions will be treated as licensed under MPL-2.0.