Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .changeset/pin-embed-exact.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@simplepdf/react-embed-pdf": patch
---

Pin `@simplepdf/embed` to an exact version (`0.6.0`) instead of the `^0.6.0` caret. A published `@simplepdf/react-embed-pdf` now always installs the exact embed build it was tested against, giving us full control over the embed rollout: react ships a known embed version, and moving it is a deliberate release step rather than a caret range resolved at the consumer's install time.
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ https://github.com/SimplePDF/simplepdf-embed/assets/10613140/8924f018-6076-4e44-
- ⚛️ [React component](./react/README.md) - `@simplepdf/react-embed-pdf`
- 🧩 [Iframe bridge](./embed/README.md) - `@simplepdf/embed` (framework-free client to embed + programmatically drive the editor, with an AI SDK adapter)
- 🚀 [Script tag](./web/README.md) - `@simplepdf/web-embed-pdf`
- 🤖 [SimplePDF Copilot](./copilot/README.md) - AI form-filling reference implementation
- 🤖 [SimplePDF Copilot](./copilot/README.md) - ready-to-fork demo of the editor's agentic capabilities

# Features

Expand All @@ -51,7 +51,7 @@ https://github.com/SimplePDF/simplepdf-embed/assets/10613140/8924f018-6076-4e44-
- Page manipulation: add, remove, rotate, re-arrange
- White-label and headless mode (Pro plan+)
- Webhooks, API, bring-your-own-storage: S3, Azure Blob Storage, SharePoint
- AI [Copilot](./copilot/README.md) that fills forms step-by-step (opt-in)
- Agentic control: drive the editor from an LLM with client-side tool calling (Vercel AI SDK + TanStack AI)
- Tiny footprint (~5KB gzipped) - the editor lazy-loads on user interaction

# Built for healthcare and privacy-sensitive products
Expand All @@ -62,7 +62,7 @@ PHI never leaves the browser unless you explicitly enable submissions. BAA avail

# AI Copilot

AI that helps users fill PDF forms step by step, inside the SimplePDF editor.
A ready-to-fork demo that demonstrates the editor's agentic capabilities: an LLM drives the SimplePDF editor through client-side tool calling.

Copilot is a turn-key, MIT-licensed reference implementation. Users answer in plain language; Copilot maps answers to the right fields, asks for what's missing, and the user reviews and signs. Fork it, wire up your AI provider, and ship it inside your product without writing the iframe bridge, tool plumbing, or streaming chat from scratch.

Expand Down
18 changes: 10 additions & 8 deletions embed/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,16 @@ Embed and programmatically drive the [SimplePDF](https://simplepdf.com) editor o

> Using React? Use [`@simplepdf/react-embed-pdf`](../react): `<EmbedPDF>` + `useEmbed` (+ the agentic `tools`), built on this core.

## Install

```bash
npm install @simplepdf/embed
```

Zero runtime dependencies at the root. `zod` is an optional peer, needed by the `/schemas`, `/tools`, `/ai-sdk`, and `/tanstack-ai` subpaths. `/ai-sdk` produces values for the Vercel AI SDK without importing `ai` (bring your own); `/tanstack-ai` uses `@tanstack/ai`'s `toolDefinition` (also an optional peer, pulled only by that subpath).

See [Subpaths](#subpaths) for more details.

## Quick start

`createEmbed` builds the editor iframe and appends it to a container you provide:
Expand Down Expand Up @@ -62,14 +72,6 @@ import { createSimplePDFTools } from '@simplepdf/embed/tanstack-ai'
useChat({ connection, tools: clientTools(...createSimplePDFTools({ embed })) })
```

## Install

```bash
npm install @simplepdf/embed
```

Zero runtime dependencies at the root. `zod` is an optional peer, needed by the `/schemas`, `/tools`, `/ai-sdk`, and `/tanstack-ai` subpaths. `/ai-sdk` produces values for the Vercel AI SDK without importing `ai` (bring your own); `/tanstack-ai` uses `@tanstack/ai`'s `toolDefinition` (also an optional peer, pulled only by that subpath).

## Subpaths

| Import | Purpose | Peer |
Expand Down
6 changes: 3 additions & 3 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion react/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@
"check:api": "node ../scripts/check-api.mjs ."
},
"dependencies": {
"@simplepdf/embed": "^0.6.0"
"@simplepdf/embed": "0.6.0"
},
"peerDependencies": {
"@tanstack/ai": "^0.38.0",
Expand Down
Loading