Skip to main content
8.3M+ downloads · since 2018 · Angular 10–22

The Angular PDF viewer,
finally fun to explore.

40+ inputs, 19 events, zero runtime dependencies. Flip a control, watch the real <ng2-pdfjs-viewer> react, and copy the exact code — or open it live in StackBlitz.

40+inputs
19events
0runtime deps
v10–22Angular
3 / 14125%dark

Trace-based JIT Type Specialization

A. Gal, B. Eich, M. Shaver — PLDI '09

Why teams choose it

A production PDF stack, not just a viewer.

🧩

One component, the whole toolkit

View, annotate, e-sign, fill forms, search, read aloud, and reorganize pages — all from a single <ng2-pdfjs-viewer> tag. No separate plugins to wire together.

📦

Zero runtime dependencies

Angular is the only peer dependency. Nothing else is added to your supply chain — the rendering engine ships inside the package, not as a transitive npm tree.

🟢

Current by design

Built on PDF.js 6.0.227 and verified on Angular 22, with a wide >=10 peer range so existing apps upgrade without churn.

🎛️

Declarative & fully typed

40+ @Input()s and 19 @Output()s drive every feature. No iframe plumbing, no postMessage wiring — just bindings and events.

🤖

Bring your own AI

Point the assistant at any OpenAI-compatible endpoint — OpenAI, Azure, Ollama, vLLM. The library never calls an AI service on its own.

🛡️

Secure & accountable

A same-origin sandboxed iframe, an origin-checked host bridge, npm provenance, and a public OpenSSF Scorecard — security you can verify, not just claim.