OSS探訪

aspida — endpoint定義から型安全なTypeScript HTTP clientを生成する

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
1,075
主要言語
TypeScript
ライセンス
MIT
リポジトリ最終更新
2023/11/11

概要

aspidaは、APIのdirectory構造と`Methods`型をもとに、path、query、header、request body、responseを型付けしたclient codeを生成するTypeScript向けHTTP client wrapperです。axios、fetch、node-fetch用adapterを選べます。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

endpointごとのMethods型から`$api.ts`を生成する

API routeとHTTP methodごとに型を定義し、CLIでclient codeを生成してapplicationから型安全に呼び出せます。

出典:[2]

axios・fetch・node-fetchを同じAPI型から使い分ける

transport部分をadapterとして分離し、同じendpoint型をbrowserやNode.jsのHTTP clientへ接続できます。

出典:[2]

backend APIとfrontend TypeScriptのinterfaceを厳密に揃えたい場合に

path parameter、query、request/response bodyの誤りをcompile時に検出し、手書きHTTP clientの型ずれを減らしたいprojectに向きます。

出典:[2]

生成物と配布版の更新状況を確認する

mainのpackage versionはplaceholderで、repository更新も長期間止まっています。npmの配布version、adapter、TypeScript versionとの互換性を確認してから採用してください。

出典:[3][1]

参考にした公式資料

  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)
編集部からの補足

aspidaはendpoint定義から`$api.ts`を生成するcode generation型のHTTP clientです。現在のmainでは`packages/aspida/package.json`のversionが`0.0.0`の開発用placeholderになっているため、これを公開release番号として扱っていません。repositoryの更新は2023年11月が最後なので、新規導入時はnpm上の配布版と周辺adapterの互換性を確認してください。

3ステップで試す

  1. 1

    aspidaとaxios adapterを追加

    公式READMEのaxios構成でcode generatorとHTTP client adapterを追加します。

    npm install aspida @aspida/axios axios
  2. 2

    endpoint型をapiディレクトリへ定義

    API routeとHTTP methodごとにpath/query/body/responseの型を定義します。

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

    $api.tsを生成

    生成された$api.tsをapplicationからimportし、型付きclientでrequestできることを確認します。

    npx aspida
公式READMEで確認

成長

成長の推移 · 直近30日

1,075 Stars

推移データを蓄積中です。

開発アクティビティ

直近90日・週次

Commit(直近30日)
0
Open PR
10

開発アクティビティを蓄積中です。

Built with

カテゴリとタグ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • typescript
  • http-client
Stars
1,075
Forks
38
Watchers
4
Open Issues
12
Contributors
12
主要言語
TypeScript
ライセンス
MIT
リポジトリ最終更新
2023/11/11

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。