Skip to content

InkLayer CoreOne PDF engine for every web framework

Build your product UI. Let Core handle PDF viewing, annotations, keyword review, secure output, and export.

PDF document with a text highlight and a selected freehand annotation.PDF document with a text highlight and a selected freehand annotation.

Start with Core ​

Install Core, provide two host elements, give the scroll container an explicit size, and load a PDF.

bash
npm install @inklayer-dev/core
html
<div id="pdf-workspace">
  <div id="pages"></div>
</div>
css
html, body, #pdf-workspace {
  height: 100%;
  margin: 0;
}

#pages {
  height: 100%;
  overflow: auto;
  background: #f2f4f7;
}
ts
import { createInkLayer } from '@inklayer-dev/core/capabilities'
import '@inklayer-dev/core/style'

const root = document.querySelector<HTMLElement>('#pdf-workspace')!
const pages = document.querySelector<HTMLElement>('#pages')!

const core = await createInkLayer({
  root,
  pageFlow: { container: pages, scale: 'page-width' }
})
await core.load({ url: '/documents/review.pdf', range: 'auto' })

Getting started →

NOTE

InkLayer Core is headless: it owns PDF and annotation behavior while your framework owns the toolbar, panels, and workflow.

From keyword rules to safe output ​

Pass Core a prepared set of terms or regular expressions—such as contract clauses, prohibited wording, account numbers, or dates. The Highlighter scans them together, previews matches in each rule's color, and gives your application an immutable review state. Accepted matches can become permanent Highlight annotations.

When matched text is sensitive, reuse the reviewed ranges to print or export a securely redacted copy. The on-screen review remains readable and color-coded; the generated PDF uses opaque coverings and image-only pages, so it contains no source text that can be selected from beneath a black box. Image-only output also flattens all other text, links, forms, and vector content.

Keyword Highlighter guide → · Secure redaction guide → · Highlighter demo → · Redaction demo →

Choose your next task ​

Load PDF → · Create your first annotation → · Create your first keyword highlight → · Create your first keyword redaction → · Print and export →

Extend only when you need to ​

Capability plugins connect one instance to application services such as logging, annotation storage, text input, printing, and downloads. Annotation Type Definitions add namespaced drawing tools. However you extend it, Core retains control of coordinates, validation, interaction, rendering, output, and cleanup.

Build your first plugin →

Released under the MIT License.