# Kernstra Web SDK docs (v1.0.0)

Install with `npm install @kernstra/pdf-web-sdk`. Every page below is also available as Markdown at its URL with `.md` added.

## Configuration

- [Configuration reference](https://kernstra.com/docs/web-sdk/config.md)
  - [Initialization](https://kernstra.com/docs/web-sdk/config/init.md)
  - [SDKMode and the resting tool](https://kernstra.com/docs/web-sdk/config/mode.md)
  - [Tools](https://kernstra.com/docs/web-sdk/config/tools.md)
  - [Toolbar](https://kernstra.com/docs/web-sdk/config/toolbar.md)
  - [Navigation bar](https://kernstra.com/docs/web-sdk/config/navigation.md)
  - [Sidebar](https://kernstra.com/docs/web-sdk/config/sidebar.md)
  - [Links](https://kernstra.com/docs/web-sdk/config/links.md)
  - [Layout](https://kernstra.com/docs/web-sdk/config/layout.md)
  - [Theme](https://kernstra.com/docs/web-sdk/config/theme.md)
  - [Locale](https://kernstra.com/docs/web-sdk/config/locale.md)
  - [Forms](https://kernstra.com/docs/web-sdk/config/forms.md)
  - [Export](https://kernstra.com/docs/web-sdk/config/export.md)
  - [Print](https://kernstra.com/docs/web-sdk/config/print.md)
  - [Confirmations](https://kernstra.com/docs/web-sdk/config/confirmations.md)
  - [Annotations](https://kernstra.com/docs/web-sdk/config/annotations.md)
  - [Loader](https://kernstra.com/docs/web-sdk/config/loader.md)
  - [Accessibility](https://kernstra.com/docs/web-sdk/config/accessibility.md)
  - [Callbacks](https://kernstra.com/docs/web-sdk/config/callbacks.md)
  - [Performance](https://kernstra.com/docs/web-sdk/config/performance.md)
  - [Fonts](https://kernstra.com/docs/web-sdk/config/fonts.md)
  - [Installation and support](https://kernstra.com/docs/web-sdk/guides/installation.md)
  - [Licensing](https://kernstra.com/docs/web-sdk/guides/licensing.md)
  - [Engine, binaries and fonts](https://kernstra.com/docs/web-sdk/guides/engine-assets.md)
  - [Quick start and the container](https://kernstra.com/docs/web-sdk/guides/container.md)
  - [Document features](https://kernstra.com/docs/web-sdk/guides/document-features.md)
  - [Theme tokens](https://kernstra.com/docs/web-sdk/guides/theme-tokens.md)
  - [What you can replace](https://kernstra.com/docs/web-sdk/guides/replace.md)
  - [Web worker rendering](https://kernstra.com/docs/web-sdk/guides/worker.md)
  - [Keyboard shortcuts](https://kernstra.com/docs/web-sdk/guides/keyboard.md)
  - [Tool reference](https://kernstra.com/docs/web-sdk/guides/tool-reference.md)

## SDK API

- [Kernstra](https://kernstra.com/docs/web-sdk/api/kernstra.md)
- [PDFDocument](https://kernstra.com/docs/web-sdk/api/pdfdocument.md)
- [PagesApi](https://kernstra.com/docs/web-sdk/api/doc-pages.md)
- [AnnotationsApi](https://kernstra.com/docs/web-sdk/api/doc-annotations.md)
- [FormsApi](https://kernstra.com/docs/web-sdk/api/doc-forms.md)
- [TextApi](https://kernstra.com/docs/web-sdk/api/doc-text.md)
- [SecurityApi](https://kernstra.com/docs/web-sdk/api/doc-security.md)
- [OutlineApi](https://kernstra.com/docs/web-sdk/api/doc-outline.md)
- [AttachmentsApi](https://kernstra.com/docs/web-sdk/api/doc-attachments.md)
- [SignaturesApi](https://kernstra.com/docs/web-sdk/api/doc-signatures.md)
- [PDFViewer](https://kernstra.com/docs/web-sdk/api/pdfviewer.md)
- [ToolsApi](https://kernstra.com/docs/web-sdk/api/tools-api.md)
- [EditTextToolApi](https://kernstra.com/docs/web-sdk/api/viewer-tools-edittext.md)
- [PDFExporter](https://kernstra.com/docs/web-sdk/api/pdfexporter.md)
- [FontRegistry](https://kernstra.com/docs/web-sdk/api/fontregistry.md)
- [SDKError](https://kernstra.com/docs/web-sdk/api/sdkerror.md)
- [EventEmitter](https://kernstra.com/docs/web-sdk/api/eventemitter.md)
- [Helpers](https://kernstra.com/docs/web-sdk/api/helpers.md)
- [Events](https://kernstra.com/docs/web-sdk/api/events.md)
- [Errors](https://kernstra.com/docs/web-sdk/api/errors.md)
- [Enums](https://kernstra.com/docs/web-sdk/api/enums.md)
- [Types](https://kernstra.com/docs/web-sdk/api/types.md)
- [Coverage](https://kernstra.com/docs/web-sdk/api/coverage.md)

## Guides

- [Framework integrations](https://kernstra.com/docs/web-sdk/guides/integrations.md)
- [Recipes](https://kernstra.com/docs/web-sdk/recipes.md)
  - [Own the download: export, upload to S3, hand back a link](https://kernstra.com/docs/web-sdk/recipes/custom-download-s3.md)
  - [Bring your own chrome](https://kernstra.com/docs/web-sdk/recipes/own-chrome.md)
  - [Serve the engine from your own origin](https://kernstra.com/docs/web-sdk/recipes/self-host-engine.md)
  - [Next.js, Nuxt, SvelteKit and Astro: mount on the client, tear down cleanly](https://kernstra.com/docs/web-sdk/recipes/ssr-frameworks.md)
  - [Hand a large file between pages without a server](https://kernstra.com/docs/web-sdk/recipes/handoff-indexeddb.md)
  - [Unsaved changes done right](https://kernstra.com/docs/web-sdk/recipes/unsaved-changes.md)
  - [Match your brand with tokens](https://kernstra.com/docs/web-sdk/recipes/theming-tokens.md)
  - [Phones and touch, without fighting the browser](https://kernstra.com/docs/web-sdk/recipes/phones-touch.md)
  - [React to the viewer with events, not timers](https://kernstra.com/docs/web-sdk/recipes/events-not-polling.md)
