@web-ai-sdk/all
v0.7.4
Published
web-ai-sdk: the TypeScript SDK for the Web AI surface. One install for the prompt, summarizer, translator, detector, writer, rewriter, proofreader, and webmcp packages.
Maintainers
Readme
@web-ai-sdk/all
One-install meta-package for web-ai-sdk, the TypeScript SDK for the Web AI surface. Pulls in every @web-ai-sdk/* building block: prompt, summarizer, translator, detector, writer, rewriter, proofreader, and webmcp, each as a regular dependency so consumers don't have to track them individually.
Docs: https://web-ai-sdk.dev/docs/guides/meta-package/
Status
Each underlying scoped package is independently supported in Chrome / Edge with the corresponding Web AI flag enabled. See the per-package READMEs for browser support details:
@web-ai-sdk/prompt@web-ai-sdk/summarizer@web-ai-sdk/translator@web-ai-sdk/detector@web-ai-sdk/writer@web-ai-sdk/rewriter@web-ai-sdk/proofreader@web-ai-sdk/webmcp
Install
pnpm add @web-ai-sdk/all
# or: npm i @web-ai-sdk/all / bun add @web-ai-sdk/allreact is a peer dependency only when you import any /react subpath.
Two equivalent import shapes
Subpath imports (recommended for production)
Tree-shakes cleanly; the bundler only pulls in the building blocks you actually use.
import { ask, createSession } from "@web-ai-sdk/all/prompt";
import { summarize } from "@web-ai-sdk/all/summarizer";
import { translate } from "@web-ai-sdk/all/translator";
import { detect } from "@web-ai-sdk/all/detector";
import { write } from "@web-ai-sdk/all/writer";
import { rewrite } from "@web-ai-sdk/all/rewriter";
import { proofread } from "@web-ai-sdk/all/proofreader";
import { registerTool, defineTool } from "@web-ai-sdk/all/webmcp";import { usePrompt, useSession } from "@web-ai-sdk/all/prompt/react";
import { useSummarizer } from "@web-ai-sdk/all/summarizer/react";Namespaced root (handy for prototyping)
import { prompt, summarizer, translator, detector, writer, rewriter, proofreader, webmcp } from "@web-ai-sdk/all";
await prompt.ask({ input: "Hello" });
await summarizer.summarize({ language: "en", input: document.body.innerText });The root entry namespaces each scoped package because several exports (e.g. checkAvailability, isAvailable, defaultCacheKey) appear in more than one package and would collide on a flat re-export.
Why a meta-package?
The scoped packages are deliberately small lifecycle wrappers; a meta-package just spares consumers from tracking eight separate installs and version pins. The aggregator is a thin re-export shell with no behaviour of its own; all logic, tests, and version history live in the scoped packages.
Versioning
The scoped packages are independently versioned, so a Prompt-only API change can ship without bumping Translator, WebMCP, or the other wrappers. The @web-ai-sdk/all version is the suite anchor: it is bumped whenever one of the packages it re-exports changes, so @web-ai-sdk/all@latest always pulls the current bundle.
License
MIT.
