Skip to content

viralcodex/pdfzen

Repository files navigation

image

A terminal-based PDF utility tool for merging, splitting, compressing, rotating, encrypting, and decrypting PDFs.

Installation

Prerequisites:

  • Bun (latest recommended)
  • Python 3.10+

Install project dependencies:

bun install

Setup

First-time setup (creates Python virtual environment and installs backend dependencies):

bun run setup

Usage

Run the app (cross-platform):

bun run dev:all

Other commands:

bun run setup         # Setup backend + frontend dependencies only
bun run dev:ui        # Run UI only
bun run dev:backend   # Run backend CLI

Install a global pdfzen command (macOS/Linux/Windows):

bun run install:global

Then reload your shell and run from anywhere:

pdfzen

Features

  • Merge PDFs: Combine multiple PDF files into one
  • Split PDF: Split a PDF into multiple files by pages, ranges, or intervals
  • Compress PDF: Reduce PDF file size with image optimization
  • Rotate PDF: Rotate pages in a PDF document
  • Delete Pages: Remove specific pages from a PDF
  • Protect PDF: Add password protection and permissions
  • Decrypt PDF: Remove password protection from PDFs
  • PDF to Images: Convert PDF pages to PNG/JPG images
  • Images to PDF: Combine images into a single PDF

Keyboard Shortcuts

Navigation

  • Tab / Shift+Tab - Navigate between UI elements
  • / - Navigate up/down through elements
  • j / k - Vim-style navigation (down/up)
  • Enter - Execute focused action (press button, submit input)

General

  • Ctrl+D - Toggle debug panel to view application state
  • ESC (double press) - Return to main menu from a tool

File List Actions

When navigating file lists, you can tab through:

  • Move Up (↑) - Reorder file up in the list
  • Move Down (↓) - Reorder file down in the list
  • Remove (X) - Remove file from the list

Adding Files

  • Click on the file list area to open file picker
  • Drag & drop files into the terminal

About

Your private PDF CLI buddy

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors