🚨 Shai-Hulud Strikes Again:834 Packages Compromised.Technical Analysis →
Socket
Book a DemoInstallSign in
Socket

streamlit-pdf

Package Overview
Dependencies
Maintainers
2
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

streamlit-pdf

A Streamlit component for viewing PDF files

pipPyPI
Version
2.0.1
Maintainers
2

streamlit-pdf

A lightweight Streamlit feature that seamlessly displays PDF files in your apps, allowing for simple, responsive, and clean document viewing with minimal effort.

📦 Installation

pip install streamlit[pdf]

Ensure you have Streamlit installed:

đź’ˇ Usage

Here's how to display a PDF file in your Streamlit app:

import streamlit as st

# Display PDF from URL
st.pdf("https://example.com/document.pdf")

# Display with custom height
st.pdf("path/to/document.pdf", height=600)

# Display uploaded file
uploaded_file = st.file_uploader("Choose a PDF file", type="pdf")
if uploaded_file is not None:
    st.pdf(uploaded_file)

⚙️ API Reference

st.pdf(data, height=600)

Parameters:

  • data (str | Path | bytes | BytesIO): The PDF file to show. This can be one of the following:

    • A URL (string) for a hosted PDF file ("https://example.com/doc.pdf")
    • A path to a local PDF file ("./documents/sample.pdf")
    • A file-like object, e.g. a file opened with open or an UploadedFile returned by st.file_uploader
    • Raw bytes data
  • height (int, optional): Height of the PDF viewer in pixels. Default: 600

🖼️ Examples

Basic PDF Display

import streamlit as st

st.title("PDF Viewer Example")

# Display a PDF from URL
st.pdf("https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf")

File Upload with PDF Display

import streamlit as st

st.title("Upload and View PDF")

uploaded_file = st.file_uploader("Choose a PDF file", type="pdf")
if uploaded_file is not None:
    st.pdf(uploaded_file)

Custom Height

import streamlit as st

# Display PDF with specific height
st.pdf("document.pdf", height=800)

# Display PDF with default height
st.pdf("document.pdf")

Reading from Local File

import streamlit as st

with open("document.pdf", "rb") as file:
    st.pdf(file.read(), height=700)

📝 Contributing

Feel free to file issues in our Streamlit Repository.

Contributions are welcome 🚀, however, please inform us before building a feature.

Development flow

Prerequisites:

uv venv .venv
source .venv/bin/activate
uv pip install -e '.[with-streamlit]' .
cd streamlit_pdf/frontend && npm install
  • Build the frontend once:
    npm run build
    
  • Or run the frontend in watch/development mode:
    npm run dev
    

Keywords

streamlit

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts