OSS Tanbou

aspida — generate type-safe TypeScript HTTP clients from endpoint definitions

About these scores

OSS scale score is an unbounded metric that log-compresses and weights Stars, Watchers, Forks, and Contributors. Discovery score is the current OSS scale score minus the score at discovery. Update pace is commits in the last 30 days, growth momentum is the OSS scale score difference within the recent observation window, and OSS health is a 0–100 rating based on available recency, Community Health, and release data.

Stars
1,075
Primary language
TypeScript
License
MIT
Repository last updated
Nov 11, 2023

Overview

aspida generates typed HTTP clients from an API directory structure and `Methods` definitions. Paths, queries, headers, request bodies, and responses are represented in TypeScript and connected to axios, fetch, or node-fetch adapters.

Features and best fit

Based on official documentation; not hands-on tested · Content checked:

Generate `$api.ts` from per-endpoint Methods definitions

Define HTTP methods and data shapes alongside route directories, then generate a client that exposes those contracts to application code.

Sources: [2]

Reuse the API model across axios, fetch, and node-fetch

Transport adapters let the same endpoint types work across browser and Node.js HTTP implementations.

Sources: [2]

For keeping backend API contracts aligned with TypeScript clients

It fits projects that want path parameters, queries, and request/response shapes checked at compile time instead of maintained as loosely typed client code.

Sources: [2]

Verify generated-code and published-release compatibility

Main uses a placeholder package version and the repository has not been updated recently. Verify the npm release, adapters, and TypeScript compatibility before adoption.

Sources: [3][1]

Official sources

  1. [1]aspida/aspida repository(2026-09-21)
  2. [2]aspida README(2026-09-21)
  3. [3]aspida package metadata(2026-09-21)
  4. [4]aspida MIT license(2026-09-21)
Supplemental curator note

aspida generates HTTP client code from endpoint definitions. On current main, `packages/aspida/package.json` uses version `0.0.0` as a development placeholder, so it is not treated as a published release number. The repository was last pushed in November 2023; new adoption should verify the npm release and adapter compatibility.

Try it in 3 steps

  1. 1

    Install aspida and the axios adapter

    Follow the official axios setup and add the generator plus HTTP client adapter.

    npm install aspida @aspida/axios axios
  2. 2

    Define endpoint types under api

    Describe route, method, query, body, and response contracts in TypeScript.

    mkdir api → export type Methods = DefineMethods<{ get: { resBody: ... } }>
  3. 3

    Generate $api.ts

    Import the generated client and verify typed HTTP calls from the application.

    npx aspida
Check the official README

Growth

Growth trends · Last 30 days

1,075 Stars

Trend data is still being collected.

Development activity

Last 90 days · weekly

Commits (last 30 days)
0
Open PRs
10

Development activity is still being collected.

Built with

Categories and tags

GitHub data

GitHub dataView detailed GitHub data

GitHub Topics

  • typescript
  • http-client
Stars
1,075
Forks
38
Watchers
4
Open issues
12
Contributors
12
Primary language
TypeScript
License
MIT
Repository last updated
Nov 11, 2023
Write a related article

Share a guide or use case for this OSS in Markdown. Articles are published after administrator approval.

Report incorrect information

Tell us if any listing information is incorrect or outdated.