Skip to content

Welcome to Massimo

Create typed HTTP clients for OpenAPI and GraphQL APIs with automatic type generation and seamless integration with JavaScript and TypeScript applications.

Type-Safe Clients

Automatically generate TypeScript types from your OpenAPI or GraphQL schemas for complete type safety in your applications.

Framework Agnostic

Works seamlessly with any JavaScript framework - Node.js, React, Vue, Angular, and more. Use in both server and browser environments.

Developer Experience

Simple CLI commands to generate clients, with support for custom headers, authentication, and request/response interceptors.

Production Ready

Battle-tested in production environments with built-in error handling, retry logic, and telemetry support.

Massimo generates optimized clients for different environments:

Node.js Client

Powered by Undici - Uses the high-performance Undici HTTP client for optimal performance in Node.js environments. Features connection pooling, HTTP/2 support, and advanced request pipelining.

Web Client

Powered by Fetch - Uses the native Fetch API for browser compatibility. Lightweight bundle size with full support for modern web standards and browser features.

  • Built on Undici for maximum performance
  • Connection pooling and keep-alive
  • HTTP/2 and pipelining support
  • Stream processing for large responses
  • Native Node.js integration
  • Uses native Fetch API
  • Minimal bundle size
  • Browser-native error handling
  • CORS support
  • Works with all modern frameworks

Generate a typed client for your API in seconds:

Terminal window
# For OpenAPI (auto-detects ESM/CommonJS from package.json)
npx massimo-cli http://api.example.com/openapi.json --name my-client
# For GraphQL with explicit module format
npx massimo-cli http://api.example.com/graphql --name my-client --type graphql --module esm

Then use it in your code:

import client from './my-client/my-client.mjs'
const api = await client({ url: 'http://api.example.com' })
const result = await api.getUsers()
  • OpenAPI & GraphQL Support - Generate clients from OpenAPI 3.0+ specs or GraphQL schemas
  • TypeScript Types - Full type safety with automatically generated TypeScript definitions
  • Module Format Support - Automatic detection and generation of ESM or CommonJS modules
  • TypeScript Declaration Extensions - Smart generation of .d.mts and .d.cts files for module-specific type definitions
  • Dual Runtime Support - Optimized clients for both Node.js (Undici) and browsers (Fetch)
  • Authentication - Built-in support for custom headers and authentication strategies
  • Fastify Integration - First-class Fastify plugin for seamless server integration
  • Error Handling - Comprehensive error types and response validation