JavaScript/TypeScript client for the Faros API, an engineering intelligence platform that ingests data from DevOps tools. Current stable version is 0.8.9, released with active development and weekly releases. It provides a GraphQL client with query builder for constructing mutations, handles authentication via API keys, supports pagination (keyset, offset), batching, retries, and OIDC. Key differentiators include first-class TypeScript support, built-in GraphQL query builder that manages origin fields and conflict resolution on upserts, and a focus on data ingestion for engineering analytics. Requires Node.js >=22 and npm >=11.10.0.
npm install faros-js-clientNo compatibility data collected yet for this library.
Verified import paths — ran on the pinned version, not inferred.
Initializes FarosClient, executes a GraphQL query, and upserts a model using QueryBuilder.
Update Node.js and npm to meet minimum versions.
Pass apiKey explicitly in constructor options, use process.env.FAROS_API_KEY.
Always provide an origin string to new QueryBuilder('my-origin').Wrap single mutation in an array: faros.sendMutations('default', [mutation]).Use conflict override to manage constraints: qb.upsert({...}, { constraint: '...' }).Use import { FarosClient } from 'faros-js-client' (with curly braces).Install package with npm i faros-js-client and use import statements; this package does not support require().
Pass apiKey to FarosClient constructor: new FarosClient({ url: '...', apiKey: '...' }).Ensure QueryBuilder is created with an origin string and that upsert uses model references correctly.