routerbase-openai-config
v0.1.0
Published
OpenAI SDK configuration helpers for the RouterBase OpenAI-compatible API.
Maintainers
Readme
RouterBase OpenAI Config
RouterBase exposes an OpenAI-compatible API at https://routerbase.com/v1. This package gives JavaScript and TypeScript projects a tiny, dependency-free way to configure OpenAI-style clients for RouterBase.
Install
npm install routerbase-openai-configUse With The OpenAI SDK
import OpenAI from "openai";
import { createRouterBaseOpenAIOptions } from "routerbase-openai-config";
const client = new OpenAI(
createRouterBaseOpenAIOptions({
apiKey: process.env.ROUTERBASE_API_KEY
})
);
const response = await client.chat.completions.create({
model: "google/gemini-2.5-flash",
messages: [{ role: "user", content: "Hello RouterBase" }]
});
console.log(response.choices[0].message.content);Helpers
import {
ROUTERBASE_BASE_URL,
DEFAULT_ROUTERBASE_MODEL,
createRouterBaseOpenAIOptions,
createRouterBaseHeaders,
resolveRouterBaseBaseURL
} from "routerbase-openai-config";ROUTERBASE_BASE_URL:https://routerbase.com/v1DEFAULT_ROUTERBASE_MODEL:google/gemini-2.5-flashcreateRouterBaseOpenAIOptions(options): returns{ apiKey, baseURL, defaultHeaders }createRouterBaseHeaders(options): returns JSON and bearer-token headers for directfetchcallsresolveRouterBaseBaseURL(value): normalizes trailing slashes
Direct Fetch Example
import {
ROUTERBASE_BASE_URL,
createRouterBaseHeaders
} from "routerbase-openai-config";
const response = await fetch(`${ROUTERBASE_BASE_URL}/chat/completions`, {
method: "POST",
headers: createRouterBaseHeaders({
apiKey: process.env.ROUTERBASE_API_KEY
}),
body: JSON.stringify({
model: "google/gemini-2.5-flash",
messages: [{ role: "user", content: "Say hello in five words." }]
})
});
console.log(await response.json());