# Lector > A headless PDF viewer for React, built on PDF.js. These docs describe the source deployed with this site, tracking main rather than a versioned npm release. Check your installed @anaralabs/lector and pdfjs-dist versions before applying examples. Start with installation, then your first viewer. Read the relevant recipe and API reference before writing an integration. All guides below are complete Markdown exports; live demos run on the linked HTML page. ## Guides and reference - [Build a PDF viewer with Lector](https://anara.com/lector/docs/index.md): Start with a readable document, then add the controls your app needs. - [AI agents and MCP](https://anara.com/lector/docs/agents.md): Connect a coding assistant to Lector's guides, search the docs, or fetch complete Markdown without a browser. - [API reference](https://anara.com/lector/docs/api.md): Component contracts, defaults, hook scope, and public exports in the current source. - [Your first viewer](https://anara.com/lector/docs/basic-usage.md): A complete viewer with selectable text, page and zoom controls, and explicit layout. - [Basic example](https://anara.com/lector/docs/code/basic.md): The smallest viewer, with visible pages and selectable text. - [Highlights](https://anara.com/lector/docs/code/highlight.md): Draw and navigate to rectangles in page coordinates. - [PDF links](https://anara.com/lector/docs/code/links.md): Enable existing PDF links and choose external-link and navigation behavior. - [Page navigation](https://anara.com/lector/docs/code/page-navigation.md): Build labeled previous and next buttons and jump to a specific page. - [PDF forms](https://anara.com/lector/docs/code/pdf-form.md): Render interactive fields and download a PDF containing the filled values. - [Search](https://anara.com/lector/docs/code/search.md): Index document text, display matches, and jump to highlighted results. - [Text selection](https://anara.com/lector/docs/code/select.md): Capture selected text and page-relative rectangles with a selection action. - [Thumbnails](https://anara.com/lector/docs/code/thumbnails.md): Add a scrollable page-preview sidebar beside the document. - [Zoom controls](https://anara.com/lector/docs/code/zoom-control.md): Set zoom limits, build a toolbar, and keep pages fitted to the container. - [Dark mode](https://anara.com/lector/docs/dark-mode.md): Render dark PDF pages, synchronize your theme, and style overlays to match. - [Loading documents](https://anara.com/lector/docs/document-loading.md): Load URLs and files, handle failures, and serve PDF.js assets from your own app. - [Installation](https://anara.com/lector/docs/installation.md): Install compatible dependencies, configure the worker, and prepare a browser-only viewer. - [Troubleshooting](https://anara.com/lector/docs/troubleshooting.md): Diagnose worker errors, blank pages, misplaced layers, reload loops, and missing search results. ## Optional - [Complete documentation](https://anara.com/lector/llms-full.txt): All guides in one response; prefer individual pages for focused tasks. - [Machine-readable catalog](https://anara.com/lector/llms.json): Page URLs, resource URIs, and content hashes.