Real business attachments
PDF, Word, Excel, PPT/PPTX, OFD, Typst, CAD, DWF, PSD, Mermaid, PlantUML, and nested archive preview are maintained as focused modules.
Browser-native preview should not need a conversion server. Uploading a private DOCX just to preview it is awful. File Viewer keeps Office, PDF, CAD, archives, email, and more in the browser. These docs cover the real integration paths, format limits, offline assets, and deployment checks.

From format detection, rendering orchestration, asset loading, and user interaction to deployment, File Viewer splits complex preview behavior into controlled, testable, and upgradeable capability modules.
PDF, Word, Excel, PPT/PPTX, OFD, Typst, CAD, DWF, PSD, Mermaid, PlantUML, and nested archive preview are maintained as focused modules.
Renderers, workers, WASM, fonts, and vendor assets are layered so the full IIFE entry does not push every capability into the first script.
Search, zoom, print, export, download, watermark, toolbar permissions, and lifecycle hooks stay consistent across preview pipelines.
Every standard component defaults to Shadow DOM. Customize through tokens and ::part(); use styleIsolation:'none' only for legacy deep overrides.
Worker, WASM, and font assets can be self-hosted with Docker, static hosting, Cloudflare Pages, release packages, and private CDNs.
The v2.2.5 demo is an immersive document workspace: only the document surface scrolls, the source capsule and format toolbar stay fixed, each action owns a nearby panel, and mobile collapses secondary controls into one More menu.

Production apps should start from the native component package, then add the smallest preset or renderer set that matches the product. preset-all is complete, but intentionally heavier.
Images, text, Markdown, code, and common media files.
PDF, Word, Excel, PowerPoint, OFD, RTF, and OpenDocument workflows.
CAD, EDA, 3D, geospatial, drawing, and structured engineering assets.
Use for full-format workbenches and release validation. Evaluate size before using in business pages.
@file-viewer/vue3, @file-viewer/react, or @file-viewer/web is the lightest integration path, but it does not include every renderer. Add the preset or renderer package for the formats you need. *-full package. It already includes preset-all, so do not install or pass another preset. Vite publishes the matching Worker/WASM/font/vendor assets in dev and build through fileViewerRenderers({ copyAssets:true }); non-Vite projects run the same-version CLI included by the Full package. pnpm add @file-viewer/vue3-full
pnpm add -D @file-viewer/vite-plugin # Vite
# Webpack / Vue CLI / Rspack / Rollup / Umi
npx --no-install file-viewer-copy-assets ./public/file-viewerFor script-tag pages, deploy the complete @file-viewer/web-full/dist/ directory; it already contains the full asset payload and needs no copy command.
Every package shares the same core capabilities, options, events, search, zoom, print, export, and lifecycle hooks while keeping framework-native ergonomics.
$(el).fileViewer(options) in traditional admin systems.The matrix follows renderers registered in code. Heavy parsers, Workers, WASM, and offline vendor assets load only after a matching file type is selected; planned formats are not counted as current support.
Docs, demo, official site, npm packages, Docker images, GitHub source aggregation, and release artifacts are maintained together. For higher fidelity and extreme performance, follow the official site to the commercial native document engine.