pagefind-bin
Pagefind is a library for performant, low-bandwidth, fully static search.
What it is and what it does
Pagefind-bin is a Python distribution of Pagefind, a static search engine designed to work entirely in the browser without backend infrastructure. It generates a compact, pre-built search index that your site serves alongside its static content, allowing users to search with minimal bandwidth overhead. The package provides platform-specific precompiled binaries for macOS, Linux, and Windows, eliminating the need to compile Rust code during installation.
This is primarily a build-time or deployment tool for static site generators and documentation platforms. You use it to index your site's content once, then serve the resulting index and search assets to users. Because it requires Python ~=3.9 and ships as binary wheels for specific platforms, installation is straightforward on supported systems but will fail on architectures outside the provided set.
Use it for:
- Index a static documentation site and embed client-side search without running a search server.
- Add search functionality to a Jamstack or Hugo-based blog without backend infrastructure.
- Build a self-hosted knowledge base with offline-capable search for low-bandwidth environments.
- Integrate search into a static site generator build pipeline as a post-build indexing step.
- Deploy search to edge-hosted or CDN-distributed static sites without database or API calls.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Pagefind-bin provides a precompiled binary distribution of Pagefind, a static search library that indexes and searches website content without requiring server infrastructure or significant bandwidth.
Yes, if you're building or maintaining a static site and need search without server infrastructure. The package is actively maintained, has no known vulnerabilities, uses a permissive MIT license, and ranks in the top 5000 PyPI packages. Install friction is moderate due to platform-specific binaries, but that is expected for a compiled tool. Verify that your architecture is supported and that the package's Python API matches your build workflow before committing.
Install
pagefind-bin on PyPI
pip
pip install pagefind-binuv
uv add pagefind-binpoetry
poetry add pagefind-binInstalling pagefind-bin
Before you install
Medium install friction due to platform-specific binary wheels (macOS arm64/x86_64, Linux x86_64/aarch64, Windows amd64/arm64). Active maintenance with recent releases and a healthy repository (5406 stars, last commit 2026-08-12).
License in practice
MIT license permits commercial and private use with minimal restrictions—you may use, modify, and distribute pagefind-bin freely as long as you include the original license notice.
Quickstart
pip install pagefind-bin==1.5.2
from pagefind_bin import search
# Use the binary to index and search static content
Requires Python ~=3.9; binary wheels are platform-specific (macOS, Linux, Windows)—installation may fail on unsupported architectures.
Verify before relying
- How the Python package exposes or wraps the underlying Rust binary for actual search operations.
- Whether this package is intended as a build-time tool, runtime dependency, or both.
- Performance characteristics and typical index size limits on large sites.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (~=3.9) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 124 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 2,686,010/month — #2,938 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pagefind_bin-1.5.2-py3-none-macosx_12_0_arm64.whl; pagefind_bin-1.5.2-py3-none-macosx_12_0_x86_64.whl; pagefind_bin-1.5.2-py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.musllinux_1_1_x86_64.whl; pagefind_bin-1.5.2-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.musllinux_1_1_aarch64.whl; pagefind_bin-1.5.2-py3-none-win_amd64.whl; pagefind_bin-1.5.2-py3-none-win_arm64.whl
Tags
More WWW/HTTP packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
h11h11 is a pure-Python HTTP/1.1 protocol…
permissive · top 100 on PyPI
httpxHTTPX is a fully featured HTTP client library…
permissive · top 100 on PyPI
httpcoreA minimal low-level HTTP client library that…
permissive · top 100 on PyPI
aiohttpaiohttp is an async HTTP client and server…
permissive · top 100 on PyPI
lunrLunr is a lightweight, in-memory full-text…
permissive · top 15,000 on PyPI
pagefindProvides an async Python API to index and…
permissive · top 5,000 on PyPI
nucliadb-utilsProvides utility functions and data structures…
permissive · top 15,000 on PyPI
faiss-gpuFaiss provides GPU-accelerated similarity…
permissive · top 15,000 on PyPI
meilisearchPython client library for the Meilisearch API,…
permissive · top 5,000 on PyPI
pelicanPelican is a static site generator that…
agpl · top 15,000 on PyPI
sembleSemble is a code search library that indexes…
permissive · top 15,000 on PyPI
usearchUSearch provides approximate nearest-neighbor…
permissive · top 15,000 on PyPI
maigretMaigret searches for a person across thousands…
permissive · top 15,000 on PyPI