https://github.com/huakunshen/jsr-client
OpenAPI client for jsr API in 3 flavors
https://github.com/huakunshen/jsr-client
jsr openapi typescript
Last synced: about 2 months ago
JSON representation
OpenAPI client for jsr API in 3 flavors
- Host: GitHub
- URL: https://github.com/huakunshen/jsr-client
- Owner: HuakunShen
- Created: 2025-01-08T10:44:49.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-01-10T07:56:30.000Z (about 1 year ago)
- Last Synced: 2025-10-01T00:34:44.023Z (6 months ago)
- Topics: jsr, openapi, typescript
- Language: TypeScript
- Homepage: https://huakunshen.github.io/jsr-client/
- Size: 99.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# JSR API Client generated from OpenAPI
**JSR Package:** https://jsr.io/@hk/jsr-client
**TypeDoc:** https://huakunshen.github.io/jsr-client/
## Usage
### HeyAPI
```ts
import { client, listPackageVersions } from "@hk/jsr-client/hey-api-client";
client.setConfig({
baseUrl: "https://api.jsr.io",
});
const res = await listPackageVersions({
path: {
scope: "kunkun",
package: "api",
},
});
```
### openapi-fetch
```ts
import { getClient } from "@hk/jsr-client";
const client = getClient({
url: "https://api.jsr.io",
});
const res = await client.GET("/scopes/{scope}/packages/{package}", {
params: {
path: {
scope: "kunkun",
package: "api",
},
},
});
```
### zod client
```ts
import { createApiClient } from "@hk/jsr-client/zod-client";
const client = createApiClient("https://api.jsr.io");
const res = await client.getPackage({
params: {
scope: "kunkun",
package: "api",
},
});
```
## Generate
https://api.jsr.io/.well-known/openapi
### openapi-fetch
```bash
npx openapi-typescript https://api.jsr.io/.well-known/openapi -o src/ts-client/schema.d.ts
```
### heyapi
```bash
wget https://api.jsr.io/.well-known/openapi
npx @hey-api/openapi-ts \
-c @hey-api/client-fetch \
-i ./openapi.yml \
-o src/client
```
### zod client generation
```bash
deno run -A npm:openapi-zod-client "https://api.jsr.io/.well-known/openapi" -o "./src/zod-client.ts"
```