gateway logo

gateway

adaline/gateway

Unified SDK for calling over 200 LLMs

GraphCanon updated 1d · GitHub synced 1d

605 stars26 forksLast push 3w TypeScript MIT

Decision brief

Unified SDK for calling over 200 LLMs with production-grade capabilities in TypeScript.

Good fit when

  • When you require access to more than 200 different LLMs through a unified interface, ensuring seamless integration and management in your development projects.
  • If you are working with TypeScript and want to integrate sophisticated AI functionalities without the complexity of dealing with multiple API integrations separately.

Avoid when

  • When your project only involves a few specific LLMs that don't require a comprehensive, unified SDK; in this case using direct SDKs from those LLM providers could simplify your setup.
  • If you are working primarily in languages other than TypeScript and need an SDK that supports those environments natively for better performance or community support.

Observed Jul 14, 2026 · Source: enrich:decision_facts

Verify the decision

Adoption

Package downloads where a registry match exists. GitHub stars (605) are secondary evidence.

npm downloads (30d)
3,043·npm downloads API·1d

Maintenance and security

Full trust report
Maintenance
Active (22d since push)
As of 1d
Provenance
Not a fork · Organization account
As of 1d
Security (OSV)
No lockfile
As of 1mo

Public GitHub metadata and optional OSV scans. Signals, not a guarantee. Trust methodology.

Install

npm install gateway
npm

How it fits your stack(18)

Typed graph edges - alternatives, integrations, successors, and dependencies. Ranked by relationship type, not raw GitHub stars.

Alternative

Integrates

Relationship graph

Optional deeper exploration of typed edges and category neighbours.

Similar tools

Same-category neighbours not already linked as typed edges.

Evidence and technical details

Sourced facts, taxonomy, compatibility claims, README excerpt, and machine-readable endpoints.

Overview

A production-grade Super SDK enabling simple and unified access to more than 200 language models using TypeScript.

Capability facts

MCP server
No MCP server detected

Source: repo_scan · Aug 21, 2026

Languages
typescript, javascript

Source: github.language+package.json · Aug 21, 2026

Categories

Compatibility

Sourced claims from the README excerpt - not unsourced marketing copy.

Node.js runtimeNode.js

Source: README excerpt (regex_v1, Aug 21, 2026)

npm install @adaline/gateway @adaline/types
Source link
OpenAI APIOpenAI API

Source: README excerpt (regex_v1, Aug 21, 2026)

const OPENAI_API_KEY = "your-api-key"; // Replace with your OpenAI API key
Source link

Tags

README

Adaline Gateway

The only fully local, production-grade Super SDK that provides a simple, unified, and powerful interface for calling more than 300+ LLMs.

  • Production-ready and trusted by enterprises
  • Fully local and NOT a proxy - deploy it anywhere
  • Built-in batching, retries, caching, callbacks, and OpenTelemetry support
  • Extensible with custom plugins for caching, logging, HTTP clients, and more - use it like building blocks to integrate with your infrastructure
  • Supports plug-and-play providers - run fully custom providers while leveraging all the benefits of Adaline Gateway

Features

  • 🔧 Strongly typed in TypeScript
  • 📦 Isomorphic - works everywhere
  • 🔒 100% local, private, and NOT a proxy
  • 🛠️ Tool calling support across all compatible LLMs
  • 📊 Batching for all requests with custom queue support
  • 🔄 Automatic retries with exponential backoff
  • ⏳ Caching with custom cache plug-in support
  • 📞 Callbacks for comprehensive instrumentation and hooks
  • 🔍 OpenTelemetry integration for existing infrastructure
  • 🔌 Plug-and-play custom providers for local and custom models

Providers

ProviderChat ModelsEmbedding Models
OpenAI
Anthropic
Google AI Studio
Google Vertex
xAi
AWS Bedrock
Azure OpenAI
Groq
Together AI
Open Router
Custom (OpenAI-like)
Voyage

Installation

Core packages

npm install @adaline/gateway @adaline/types

Provider packages

Dependencies for providers are optional. You can install them as needed. For example:

npm install @adaline/openai @adaline/anthropic @adaline/google @adaline/open-router @adaline/bedrock

Quickstart

Chat

This example demonstrates how to invoke an LLM with a simple text prompt in both non-streaming and streaming modes.

import { Gateway } from "@adaline/gateway";
import { OpenAI } from "@adaline/openai";
import { Config, ConfigType, MessageType } from "@adaline/types";

const OPENAI_API_KEY = "your-api-key"; // Replace with your OpenAI API key

const gateway = new Gateway();
const openai = new OpenAI();

const gpt4o = openai.chatModel({
  modelName: "gpt-4o",
  apiKey: OPENAI_API_KEY,
});

const config: ConfigType = Config().parse({
  temperature: 0.7,
  maxTokens: 300,
});

const messages: MessageType[] = [
  {
    role: "system",
    content: [{
      modality: "text",
      value: "You are a helpful assistant. You are extremely concise.",
    }],
  },
  {
    role: "user",
    content: [{
      modality: "text",
      value: `What is ${Math.floor(Math.random() * 100) + 1} + ${Math.floor(Math.random() * 100) + 1}?`,
    }],
  },
];

// * Complete chat
async function runCompleteChat() {
  const completeChat = await gateway.completeChat({
    model: gpt4o,
    config,
    messages,
    tools: [],
  });
  console.log(completeChat.provider.request); // HTTP Request sent to Provider
  console.log(completeChat.provider.response); // HTTP Response from Provider
  console.log(completeChat.cached); // Whether the response was cached
  console.log(completeChat.latencyInMs); // Latency in milliseconds
  console.log(completeChat.request); // Request in Gateway types
  console.log(completeChat.response); // Response in Gateway types, E.g.:
  // {
  //   "messages": [
  //     {
  //       "role": "assistant",
  //       "c

For agents

This page has a .md twin and JSON over the API.

Was this helpful?

Anonymous feedback helps us improve pages and translations.