https://github.com/itsjunetime/tdf Skip to content Navigation Menu Toggle navigation Sign in * Product + GitHub Copilot Write better code with AI + Security Find and fix vulnerabilities + Actions Automate any workflow + Codespaces Instant dev environments + Issues Plan and track work + Code Review Manage code changes + Discussions Collaborate outside of code + Code Search Find more, search less Explore + All features + Documentation + GitHub Skills + Blog * Solutions By company size + Enterprises + Small and medium teams + Startups By use case + DevSecOps + DevOps + CI/CD + View all use cases By industry + Healthcare + Financial services + Manufacturing + Government + View all industries View all solutions * Resources Topics + AI + DevOps + Security + Software Development + View all Explore + Learning Pathways + White papers, Ebooks, Webinars + Customer Stories + Partners + Executive Insights * Open Source + GitHub Sponsors Fund open source developers + The ReadME Project GitHub community articles Repositories + Topics + Trending + Collections * Enterprise + Enterprise platform AI-powered developer platform Available add-ons + Advanced Security Enterprise-grade security features + GitHub Copilot Enterprise-grade AI features + Premium Support Enterprise-grade 24/7 support * Pricing Search or jump to... Search code, repositories, users, issues, pull requests... Search [ ] Clear Search syntax tips Provide feedback We read every piece of feedback, and take your input very seriously. [ ] [ ] Include my email address so I can be contacted Cancel Submit feedback Saved searches Use saved searches to filter your results more quickly Name [ ] Query [ ] To see all available qualifiers, see our documentation. Cancel Create saved search Sign in Sign up Reseting focus You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert {{ message }} itsjunetime / tdf Public * Notifications You must be signed in to change notification settings * Fork 16 * Star 799 A tui-based PDF viewer License GPL-3.0 license 799 stars 16 forks Branches Tags Activity Star Notifications You must be signed in to change notification settings * Code * Issues 11 * Pull requests 3 * Actions * Projects 0 * Security * Insights Additional navigation options * Code * Issues * Pull requests * Actions * Projects * Security * Insights itsjunetime/tdf main BranchesTags [ ] Go to file Code Folders and files Name Name Last commit Last commit message date Latest commit History 56 Commits .github/workflows .github/workflows benches benches ratatui @ 1166beb ratatui @ 1166beb ratatui-image @ ratatui-image @ 53a788e 53a788e scripts scripts src src .gitignore .gitignore .gitmodules .gitmodules .rustfmt.toml .rustfmt.toml CHANGELOG.md CHANGELOG.md Cargo.lock Cargo.lock Cargo.toml Cargo.toml LICENSE LICENSE README.md README.md example_scrt.png example_scrt.png rust-toolchain.toml rust-toolchain.toml View all files Repository files navigation * README * GPL-3.0 license tdf A terminal-based PDF viewer. Designed to be performant, very responsive, and work well with even very large PDFs. Built with ratatui. What it looks like 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 includes packages such as (but not limited to) cairo, gtk, and poppler. If you're on linux, these will probably show up in your package manager as something like libcairo-devel or cairo-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 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. This is so that we can relicense to MPL-2.0 at some point in the future if we manage to move away from poppler as a backend (since that is the only dependency, at time of writing, which requires the GPLv3 license). About A tui-based PDF viewer Resources Readme License GPL-3.0 license Activity Stars 799 stars Watchers 8 watching Forks 16 forks Report repository Releases 1 tags Packages 0 No packages published Contributors 2 * @itsjunetime itsjunetime June * @Kreijstal Kreijstal Kreijstal Languages * Rust 98.5% * Shell 1.5% Footer (c) 2025 GitHub, Inc. Footer navigation * Terms * Privacy * Security * Status * Docs * Contact * Manage cookies * Do not share my personal information You can't perform that action at this time.