NETROOM
The official TypeScript client for OpenAI: the Responses API alongside classic chat completions, streaming, tools, structured outputs with a zod helper, files, batches and realtime over WebSocket. It runs in Node, Deno, Bun, at the edge and in the browser (with the usual key caveats). The same client talks to Azure OpenAI and any compatible endpoint by swapping baseURL. Recent majors need Node 22+; on 18 or 20 you stay on the 4.x line. Majors ship often.
Anthropic's official TypeScript client: Messages, SSE streaming, tool use, batches, file uploads and token counting before you send. Runs on Node, Bun, Deno and Cloudflare Workers, fully typed. It is still on 0.x and minor releases occasionally shift types, so pin it in your lockfile. Good when Claude is the only provider you talk to; if you juggle several, Vercel's `ai` with provider packages is easier. The key is paid, with no free allowance. MIT.
The standard TypeScript interface to language models: streamText, generateObject, tool calling and ready-made hooks for React, Svelte and Vue. Providers ship as separate packages, so swapping OpenAI for Anthropic is a one-line change. Version 7.x raised the floor to Node 22 and reworked the message format - migrating from 4.x is real work. Pick it for a production chat or agent in Next.js. No Python equivalent, and some conveniences assume Vercel AI Gateway. Apache-2.0.
The Python original of LangGraph: an agent is a graph of nodes over shared state, not a chain of calls. That buys you loops, branching, checkpoints in Postgres or SQLite, pausing for human approval and exact resumption. It installs independently of langchain and works with any model. Marked Production/Stable on the 1.x line, Python 3.10+, MIT. The price of that flexibility is verbosity - a short tool loop does not need a graph.
One OpenAI-compatible interface over a hundred providers, plus a standalone proxy server with keys, budgets, rate limits, fallbacks and caching. Teams adopt it to avoid rewriting code when the model changes and to track spend in one place. Things to know: the package is heavy on dependencies, releases land almost daily and occasionally shift behaviour, so pin the version. The core is MIT, but some proxy features sit behind an enterprise licence. Python 3.10+.
A Claude Code skill that turns a single sentence into a looping animated 3D icon as a WebP with real transparency, ready to drop into an interface. Inside is a three-step chain: a still image from GPT Image, a video from Seedance, and background removal on every frame. The seamless loop comes from a simple trick: the same still is handed to the video model as both the first and the last frame. The background is removed against a colour chosen in advance, so soft edges stay soft instead of picking up a halo. Before spending money on video the skill stops twice and waits for approval. Both models run through a paid OpenRouter key, and it needs ffmpeg and Python dependencies. The project is brand new. MIT.
Formerly Magic MCP: connects Claude Code, Cursor, Windsurf or any MCP client to the 21st.dev catalog of 12,000+ React components. The agent searches for a component, reads its real code and installs it into the project with its dependencies without leaving the editor. 21st AI drafts several variants of a screen from a prompt, and ready-made jobs build a screen in the project's style or audit the UI for accessibility and responsiveness. You can publish your own theme from CSS variables and your own components for the team. Search and publishing are free, installs are capped at two a day, and generation spends paid credits.
The Anthropic provider for the Vercel AI SDK: wires Claude into streamText and generateObject with extended thinking, prompt caching and tool calls. Useless on its own - it needs the `ai` package from the same major line (7.x today, Node 22+) and a paid ANTHROPIC_API_KEY. Take it when your app already runs on the AI SDK and you want Claude behind the same code path as every other model. If Claude is your only model forever, the thinner option is @anthropic-ai/sdk. Apache-2.0.
The OpenAI provider for the Vercel AI SDK: chat and the Responses API, structured outputs, embeddings, images and transcription, all behind the SDK's shared functions. It only works paired with the `ai` package of the same major version (7.x, Node 22+), and the key is paid. The payoff is that switching models never touches business logic - one provider line changes. If you need exotic API fields or Assistants, the official `openai` client exposes more surface. Apache-2.0.
React primitives for a model chat: streaming, message branching, editing a sent message, attachments, auto-scroll and stop-generation - the parts that take weeks to get right by hand. It ships unstyled and installs shadcn-style, with first-class adapters for the Vercel AI SDK and LangGraph. Still 0.x, and the API moves between minors, so upgrade deliberately. Worth it for a product-grade chat surface; a throwaway demo does fine with a list of divs. MIT.
WASM bindings for the tiktoken tokenizer in JavaScript: count OpenAI model tokens before you send a request, so you neither blow the context window nor guess at cost. It drags a .wasm file along, and getting your bundler to serve it under Next.js or an edge runtime is where most of the issue tracker lives. There is also pure-JS js-tiktoken: slower, but no bundler wrangling. Useless for Claude or Gemini, which tokenize differently. MIT.
JS/TS client for fal.ai, a hosted runner for image, video and audio models (FLUX, Veo, Kling and friends). Everything goes through a queue: subscribe waits and streams progress, queue hands you an id for a webhook. It also uploads files to their storage. The key is paid, billed per GPU second. Important: never ship the key to the browser - the package includes a Next.js proxy route. Node 18+, MIT. It supersedes @fal-ai/serverless-client, which no longer gets updates.
Google's current SDK for Gemini: one client that talks to both the Gemini API with an AI Studio key and Vertex AI with a service account, switched by a flag. All the new surface lives here - function calling, context caching, files, the Live API with two-way audio and video, image generation. The older @google/generative-ai and @google-cloud/vertexai get no new features, so migration isn't optional. Node 20+ (22+ from 3.0), Apache-2.0. Majors land often and break things - pin the version.
TypeScript client for Hugging Face inference: one key, many providers behind it - Together, Replicate, fal, Cerebras, Novita, plus your own Inference Endpoints. You pick the task by name (chatCompletion, textToImage, automaticSpeechRecognition) and the provider by parameter, and you get a single bill. Handy when you want to try models without signing up for each service. An OpenAI-compatible mode is there too. Node 18+, MIT, on 4.x with near-daily releases - pin the version rather than using a caret.
Transformers.js runs models straight in the browser on ONNX Runtime - no server, no data leaving the device. Text classification, embeddings, speech recognition, object detection, small LLMs; fast on WebGPU, slow on wasm but working everywhere. Good for privacy and offline use, bad for large models, since the weights download into the browser and run to hundreds of megabytes. On 4.x, moved here from @xenova/transformers, Apache-2.0. It works in Node and in workers as well.
The TypeScript port of instructor: a zod schema in, a typed object out, with validation-error retries and streaming of partial results. Next to the Python original it's stalled - the last commits in the repo date to January 2025 and the version still sits at 1.7. It wants openai and zod as peer dependencies, and newer zod majors can clash. For new code, generateObject from the Vercel AI SDK or OpenAI's native structured outputs is the safer bet. MIT.
The Node client for LanceDB: the same embedded vector database, bound to the Rust core, with prebuilt platform binaries in the package so nothing compiles on install. It writes to a local folder or to S3, does hybrid search, filters and table versioning, and needs no separate service. It requires Node 22 or newer, which is stricter than most - on older images and in some serverless runtimes it simply won't start. On 0.38, still 0.x, Apache-2.0, released in lockstep with the Python package.
The foundation of LangChain.js: Runnable and LCEL composition, message, tool and structured-output schemas. Everything else - @langchain/openai, langgraph, every integration - sits on top of it. You rarely install it directly since it usually arrives as a peer dependency, but writing your own integration or a custom Runnable means pulling core rather than the langchain meta-package. The 1.x line settled down after a long 0.x run. Needs Node 20+ and zod, MIT.
Graph orchestration for TypeScript agents: nodes, edges, shared state, checkpoints, human-in-the-loop and resume-after-pause. Reach for it when linear LCEL chains run out - you need loops, branching and state that survives a restart. For plain question-answer it is overkill; the provider SDK is enough. It peer-depends on @langchain/core and zod, but the rest of LangChain is optional. The 1.x line is stable, Node 18+, MIT.
A TypeScript agent framework from the former Gatsby team: agents, tools, branching workflows, memory, RAG, evals and a local dev playground with a run inspector. The Vercel AI SDK sits underneath, so switching providers is a one-line change. Its closest neighbour is LangGraph.js, but Mastra is tidier for product teams and better documented. Needs Node 22.13+ and zod as a peer. It moves fast, shipping releases almost daily, so pin the version. Apache-2.0.
The TypeScript twin of the Python Mistral client: chat, streaming, embeddings, OCR, agents, batches and fine-tuning - same surface, same Speakeasy generation, full types and convenient zod schemas for tools. Licensed Apache-2.0 rather than MIT. OpenTelemetry tracing bolts on through optional peer dependencies. You need a Mistral key and their own pricing. The reasons to prefer it over the OpenAI client are EU data residency and Codestral for code.
The TypeScript SDK for the Model Context Protocol: server and client, stdio, streamable HTTP and SSE transports, plus ready-made OAuth for remote servers. This is what MCP servers for Claude Code, Cursor and VS Code are written with, and tool schemas are declared in zod. The annoyance: express, hono and jose sit in its dependencies, which is dead weight for a tiny stdio server. Nominally 1.x, yet breaking changes land in minors - pin it. Node 18+, MIT.
Abandoned - do not start a new project on it. A ready-made React chat interface: an AiChat component, streaming, personas and adapters for OpenAI and Hugging Face. The idea was sound, but the last npm release shipped in August 2024, the repository went quiet in late 2025, and React 19 support was never declared. The live alternatives are assistant-ui or the UI layer of the Vercel AI SDK (@ai-sdk/react with useChat). Note also the MPL-2.0 licence rather than MIT.
A lightweight agent framework straight from OpenAI: an agent is instructions plus tools, with handoffs between agents, input and output guardrails, built-in tracing to the OpenAI dashboard and a realtime voice mode on top. It is deliberately thinner than LangGraph - a control-passing loop rather than a state graph. It targets the Responses API; other providers attach through a compatibility layer and not everything works. Still 0.x, with breaking changes in minors, so pin it.
Pinecone's official TypeScript SDK: the same indexes and queries as the Python client, but typed and without dragging Python into your stack. Built on fetch, so it runs in Node and in edge runtimes like Vercel Edge and Cloudflare Workers. The 8.x line needs Node 20+, licensed Apache-2.0. The key is paid and there is no local mode, so tests either hit the cloud or mock HTTP. For RAG on Next.js it's the shortest path to vector search with no infra of your own.
A thin REST client for Qdrant in TypeScript: collections, upserts, search with payload filters, all typed and generated from the OpenAPI spec. No gRPC here, HTTP only, which keeps it small and edge-runtime friendly. The 1.19 line needs Node 22+, licensed Apache-2.0. Unlike the Python client there's no embedded local mode - you need a running Qdrant, even if that's Docker on localhost. A sound pick when the backend is Node and Pinecone's bill isn't welcome.
The JavaScript client for Tavily, a search API built for LLMs: instead of a link list you get cleaned page excerpts plus a short synthesized answer, ready to drop straight into context with no scraper or HTML parser of your own. It also does extract for specific URLs and crawl. An API key is required and billing is credit-based; the free allowance covers a prototype. MIT, plain fetch, runs in Node and on the edge. The alternative is wiring Google/Bing yourself and scrubbing HTML.
OpenTelemetry-native tracing for LLM apps on Node: install the SDK and it auto-instruments calls to OpenAI, Anthropic, LangChain and vector databases, so traces carry prompts, completions, token counts and cost. The key difference from LangSmith and Langfuse is that it emits plain OTLP, so the data can land in your own Jaeger, Datadog or Grafana rather than only a vendor's cloud. Apache-2.0, Node 18+. Still 0.x, so the API moves, with a release every couple of months.