leed_pdf_viewer Svelte Themes

Leed_pdf_viewer

An open-source, privacy-first PDF annotation tool that turns any PDF into an infinite drawing canvas. Draw, sketch, and annotate with natural pen-like precision - all in your browser

LeedPDF Logo

LeedPDF - Free PDF Annotation Tool

Add drawings and notes to any PDF.

Works with mouse, touch, or stylus - completely free and private.


A modern, open-source PDF annotation tool that runs entirely in your browser

Transform any PDF into an interactive canvas. Draw, annotate, and collaborate without uploading your documents to external servers.

LeedPDF in action - annotating a Y Combinator fundraising guide with highlights, comments, and drawings

Try it now → | Report Issues | Contribute

✨ Features

šŸ” PDF Search & Discovery

  • Web-wide PDF search powered by Brave Search API
  • Direct PDF opening from search results
  • Smart filtering for PDF documents only
  • Pagination through search results
  • Real-time search with instant results
  • Setup guide: See docs/SEARCH_FEATURE.md for configuration

šŸŽØ Drawing & Annotation

  • Freehand drawing with customizable pencil and highlighter tools
  • Shape tools including rectangles, circles, arrows, and stars
  • Text annotations with inline editing
  • Sticky notes for quick comments
  • Smart eraser that removes intersecting elements

šŸ“± Universal Access

  • Works on any device - desktop, tablet, or phone
  • Touch-optimized with Apple Pencil support
  • Mobile-friendly interface that works seamlessly on smartphones and tablets
  • No installation required - runs in your browser
  • Offline capable after first visit (PWA)

♿ Accessibility First

  • WCAG AAA compliant - exceeds accessibility standards with 7.06:1 contrast ratios
  • Keyboard navigation - full functionality without a mouse
  • Screen reader friendly - semantic HTML and proper ARIA labels
  • High contrast mode support for visually impaired users
  • Scalable interface - works with browser zoom up to 200%
  • Color blind friendly - doesn't rely solely on color for information
  • Focus indicators - clear visual focus states for all interactive elements

šŸ”’ Privacy First

  • 100% client-side - your PDFs never leave your device
  • No account required - start annotating immediately
  • Local auto-save - your work is preserved automatically

⚔ Performance

  • Instant loading from URLs (including Dropbox links)
  • High-DPI rendering for crisp display on all screens
  • Infinite canvas - pan and zoom without limits
  • Full undo/redo with keyboard shortcuts

šŸš€ Quick Start

Option 1: Use Online

Visit leed.my and start annotating immediately.

Option 2: Load from URL

Share annotated PDFs by adding /pdf/ to any URL:

https://leed.my/pdf/https://example.com/document.pdf

Option 3: Run Locally

git clone https://github.com/rudi-q/leed_pdf_viewer.git
cd leed_pdf_viewer
pnpm install
pnpm build && pnpm preview

# Or just use the shorthand:
pnpm prev

Open http://localhost:4173 in your browser.

šŸ› ļø Tech Stack

  • Framework: SvelteKit + TypeScript
  • PDF Rendering: PDF.js
  • Drawing Engine: HTML5 Canvas
  • Styling: Tailwind CSS
  • Build: Vite
  • PWA: @vite-pwa/sveltekit

šŸ“– Usage

Basic Controls

  • Upload: Drag & drop a PDF or click the folder icon
  • Draw: Select the pencil tool and start drawing
  • Navigate: Use arrow keys or toolbar buttons
  • Zoom: Ctrl + scroll wheel or toolbar buttons
  • Pan: Ctrl + drag (or just drag outside PDF area)

Keyboard Shortcuts

Action Shortcut
Tools 1-9 (pencil, eraser, text, etc.)
Navigation ←/→ for pages, W/H for fit
Zoom Ctrl +/-, Ctrl 0 to reset
Actions Ctrl Z/Y for undo/redo
Upload U to choose file
Help ? or F1

šŸŽÆ Perfect For

  • Students reviewing lecture slides and textbooks
  • Professionals annotating contracts and reports
  • Researchers marking up papers and documentation
  • Teams collaborating on design mockups
  • Anyone who needs to mark up PDFs quickly

šŸ”§ Development

Prerequisites

  • Node.js 18+
  • npm/pnpm/yarn

Setup

# Install dependencies
pnpm install

# Build for production
pnpm build

# Preview production build
pnpm preview

# Or use the shorthand:
pnpm prev

Building the Tauri Desktop App

# 1. Install dependencies
pnpm install

# 2. Install Rust (if you don't have it)
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

# 3. Build your native app
pnpm tauri build

Project Structure

src/
ā”œā”€ā”€ lib/
│   ā”œā”€ā”€ components/     # Svelte components
│   ā”œā”€ā”€ stores/         # State management
│   └── utils/          # PDF and drawing utilities
ā”œā”€ā”€ routes/             # SvelteKit routes
└── app.html           # App template

šŸ¤ Contributing

We welcome contributions! Here's how to get started:

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/awesome-feature
  3. Commit your changes: git commit -m 'Add awesome feature'
  4. Push to the branch: git push origin feature/awesome-feature
  5. Open a Pull Request

Development Guidelines

  • Follow the existing code style (ESLint + Prettier configured)
  • Test your changes across different devices/browsers
  • Update documentation for new features
  • Keep commits atomic and well-described

šŸ’¬ Community & Feedback

We'd love to hear from you! Join our community discussions:

  • šŸ’š Wall of Love - Share your feedback about what you loved about LeedPDF and why
  • šŸ™ Q&A - Ask any questions you may have
  • šŸ—³ļø Polls - Poll on ideas
  • šŸ’” Ideas - Share new ideas
  • šŸ™Œ Show and Tell - Show us how you're using LeedPDF

You can also use GitHub Issues for bug reports.

🌱 Support the Project

Love LeedPDF? Help us keep it free and open source!

ā˜• GitHub Sponsors

šŸ’ Sponsor on GitHub

Your sponsorship helps us:

  • ✨ Add new features and improvements
  • šŸ”§ Fix bugs and maintain code quality
  • šŸ“– Create better documentation and tutorials
  • šŸŒ Keep the project free for everyone
  • šŸš€ Improve performance and accessibility

Every contribution, big or small, makes a difference!

šŸ“„ License

LeedPDF is flexibly licensed to give you options:

šŸ†“ Web App - AGPL-3.0 (Free & Open Source)

✨ Try LeedPDF Web App - Always free, no account required

Perfect for:

  • āœ… Personal projects and learning
  • āœ… Educational and research use
  • āœ… Full PDF annotation features
  • āœ… Privacy-focused (local processing)
  • āœ… Contributing back to the community

šŸ–„ļø Desktop App - PAID

šŸ’» Download Desktop App for Windows - One-time purchase

  • šŸŽÆ Windows: Pay-what-you-want
  • āœ… Native desktop experience
  • āœ… Better performance
  • āœ… Offline sync capabilities
  • āœ… Lifetime updates
  • šŸ“‹ Governed by End User License Agreement

Mac desktop app coming soon!

šŸ’¼ Commercial License for developers (Paid)

Required for:

  • šŸ¢ Commercial products and services
  • šŸ¢ Proprietary software integration
  • šŸ¢ SaaS applications and hosted services
  • šŸ¢ Client work and consulting projects
  • šŸ¢ Removing AGPL-3.0 obligations

šŸ’³ Developer Commercial Licensing Options

šŸ›’ Get Commercial License

Available options:

  • Individual License - Solo developers and small companies
  • Team License - Growing teams and agencies (up to 10 developers)
  • Enterprise License - Large organizations with custom terms

For Enterprise licensing and custom requirements, contact [email protected]

šŸ¤ What You Get With Commercial License:

  • āœ… Remove AGPL-3.0 copyleft requirements
  • āœ… Use in proprietary/commercial applications
  • āœ… No source code disclosure obligations
  • āœ… Distribute without open-sourcing your app
  • āœ… Remove attribution requirements
  • āœ… Email support for integration questions
  • āœ… Perpetual license (no expiration)

ā“ Need Help Choosing?

  • Personal project for web? → Use AGPL-3.0 (free)
  • Building a commercial product? → Individual License ($99)
  • Team of developers? → Team License ($399)
  • Large company/custom terms? → Enterprise License ($1,299+)

Questions about licensing? Contact us: [email protected]


By using LeedPDF, you agree to comply with the terms of your chosen license. The AGPL-3.0 license requires that any network-accessible modifications be open-sourced.

šŸ™ Acknowledgments

  • PDF.js - Mozilla's excellent PDF rendering engine
  • SvelteKit - The framework that makes this possible
  • Brave Search API - Powering our web-wide PDF search functionality
  • Vite - Lightning-fast build tool
  • Tauri - For building lightweight desktop apps
  • Tailwind CSS - Utility-first CSS framework

Built with ā¤ļø for the open web

Privacy-focused • Lightweight • No tracking • No accounts • No servers

Top categories

Loading Svelte Themes