Skip to content
Switch branches/tags
Go to file

React PDF viewer

A React component to view a PDF document. It's written in TypeScript, and powered by React hooks completely.

// Core viewer
import { Viewer } from '@react-pdf-viewer/core';

// Plugins
import { defaultLayoutPlugin } from '@react-pdf-viewer/default-layout';

// Import styles
import '@react-pdf-viewer/core/lib/styles/index.css';
import '@react-pdf-viewer/default-layout/lib/styles/index.css';

// Create new plugin instance
const defaultLayoutPluginInstance = defaultLayoutPlugin();

        // Register plugins

React PDF viewer


Basic features

  • Support password protected document
  • Zooming: Support custom levels such as actual size, page fit, and page width
  • Navigation between pages
  • Can go to the first and last pages quickly
  • Search for text
  • Preview page thumbnails
  • View and navigate the table of contents
  • List and download attachments
  • Rotating
  • Text selection and hand tool modes
  • Different scrolling modes
  • Full screen mode
  • Can open a file from local. Users can drag and drop a local file to view it
  • Download file
  • View the document properties
  • Support SSR
  • Print


  • The toolbar can be customized easily
  • All text items can be localized in another language

Coming soon

  • Theming
  • Darkmode


You have to purchase a Commercial License at the official website.


This project is developed by Nguyen Huu Phuoc. I love building products and sharing knowledge.

Be my friend on


You might be interested in my products:

1 LOC (3.3k★)

Favorite JavaScript utilities in single line of code

Blur Page

A browser extension to hide sensitive information on a web page

Check Browsers Support

A browser extension to check browser compatibility without leaving your tab

CSS Layout (2.7k★)

A collection of popular layouts and patterns made with CSS

Fake Numbers

Generate fake and valid numbers

Form Validation

The best validation library for JavaScript

HTML DOM (3.1k★)

How to manage HTML DOM with vanilla JavaScript

React PDF Viewer

A React component to view a PDF document

this VS that

The differences between ___ and ___ in the front-end development