Skip to main content

Reflex PDF Viewer

A powerful and easy-to-use PDF viewer component for Reflex applications. Built on top of react-pdf, it provides seamless PDF viewing capabilities with full control over navigation, zoom, and display options.

📦 Installation

pip install reflex-pdf-viewer

🚀 Quick Start

import reflex as rx
from reflex_pdf_viewer import Document, Page

class State(rx.State):
    current_page: int = 1
    n_pages: int = 1

    @rx.event
    def load_success(self, info: dict):
        self.n_pages = info.get("numPages", 1)

def index():
    return rx.vstack(
        rx.heading("Reflex pdf preview", size="8"),
        Document.create(
            Page.create(page_number=State.current_page),
            file="https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf",
            on_load_success=State.load_success,
        ),
    )

app = rx.App()
app.add_page(index)

Don't forget to add the frontend package to your rxconfig.py:

import reflex as rx

config = rx.Config(
    app_name="your_app",
    frontend_packages=[
        "react-pdf@10.1.0",  # Required for PDF viewing
    ],
)

📝 Changelog

v0.0.1 (2025-12-09)

  • Initial release
  • Basic PDF viewing functionality
  • Page navigation support
  • Zoom controls
  • Error handling
  • Loading states

v0.0.2 (2025-11-01)

  • Added loading prop to avoid failed to load pdf issue

🐛 Issues & Support

If you encounter any issues or have questions:

  1. Check the GitHub Issues
  2. Join the Reflex Discord community
  3. Create a new issue with detailed information

🙏 Acknowledgments

  • Built with Reflex - The web framework for Python
  • Powered by react-pdf - React PDF viewer component
  • Uses PDF.js - JavaScript PDF rendering engine

Made with ❤️ for the Reflex community

Star ⭐ this repo if you find it useful!

Metadata

Release files for reflex-pdf-viewer 0.0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for reflex-pdf-viewer 0.0.3
File Size Uploaded
reflex_pdf_viewer-0.0.3.tar.gz 3.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for reflex-pdf-viewer 0.0.3
File Interpreter ABI Platform
reflex_pdf_viewer-0.0.3-py3-none-any.whl Python 3 none any Details

Total release size: 6.9 kB

Release files / reflex_pdf_viewer-0.0.3.tar.gz

Download URL reflex_pdf_viewer-0.0.3.tar.gz
Size 3.5 kB
Tags Source
SHA-256 checksum
How to use checksums
f2cc7451a775bcef5b42e19a52cca2bfd1f064a698ab94c28b8595d55850fbd0
BLAKE2b-256 checksum
How to use checksums
c09cda498a65c5c66a5fa4f7ae1d9a44218a4fa8f41070da188c9ffd67489608
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.0

Release files / reflex_pdf_viewer-0.0.3-py3-none-any.whl

Download URL reflex_pdf_viewer-0.0.3-py3-none-any.whl
Size 3.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5fd70775e6c27ec64b94e9f81ffa5b3f0102680ff9238a306332143d6ff81c1b
BLAKE2b-256 checksum
How to use checksums
4563bbd2bf3147bd55b2d5ad22151eead0e70e7f578ec563b041a1ef55b07b6c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.0

Release history Release notifications | RSS feed

This release

0.0.3 This release

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page