Skip to content

PavelVaks/PDFFiller

Repository files navigation

PDF Document Filler

A modern web application for uploading PDFs, adding fillable fields, and creating completed documents with embedded signatures and data. All data is stored locally in your browser using IndexedDB - no backend required!

Features

  • Upload and view PDF documents
  • Add signature, initials, text, and date fields
  • Create signatures by drawing, typing, or uploading
  • Reuse saved signatures across documents
  • Fill all fields and download completed PDFs
  • All data stored locally in your browser

Quick Start

  1. Install dependencies:
npm install
  1. Start the development server:
npm run dev
  1. Open your browser to the local URL (usually http://localhost:5173)

That's it! No database setup or environment variables needed.

How to Use

  1. Upload a PDF: Drag and drop or click to browse for a PDF file
  2. Add Fields: Click field type buttons (Signature, Initials, Text, Date) then click on the PDF to place them
  3. Fill Fields: Switch to Fill mode and click on each field to complete it
  4. Download: Once all fields are filled, download your completed PDF

Technologies

  • React 18 with TypeScript
  • Vite for build tooling
  • Tailwind CSS for styling
  • React Router for navigation
  • React PDF for viewing
  • pdf-lib for PDF manipulation
  • IndexedDB for local storage

Project Structure

src/
├── components/        # React components
├── pages/            # Page components
├── lib/              # Utilities and database logic
└── types/            # TypeScript type definitions

Browser Support

Works in all modern browsers that support:

  • IndexedDB
  • Canvas API
  • FileReader API

Tested on Chrome, Firefox, Safari, and Edge.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors