@danstackme/apity
Version:
Type-safe API client generator for React applications with file-based routing and runtime validation
133 lines (132 loc) • 3.58 kB
JSON
{
"name": "@danstackme/apity",
"version": "0.5.7",
"description": "Type-safe API client generator for React applications with file-based routing and runtime validation",
"author": "Daniel Osmond",
"license": "MIT",
"repository": {
"type": "git",
"url": "https://github.com/danstackme/apity.git"
},
"type": "module",
"main": "./dist/src/index.js",
"module": "./dist/src/index.js",
"types": "./dist/src/index.d.ts",
"exports": {
".": {
"types": "./dist/src/index.d.ts",
"import": "./dist/src/index.js",
"require": "./dist/src/index.cjs",
"default": "./dist/src/index.js"
}
},
"files": [
"dist",
"README.md",
"LICENSE"
],
"bin": {
"apity-import": "./dist/scripts/import-openapi.js"
},
"scripts": {
"dev": "tsup --watch",
"build": "tsup",
"test": "vitest run --coverage",
"test:coverage": "vitest run --coverage.enabled=true --coverage.reportOnFailure --coverage.reporter=text",
"test:watch": "vitest",
"test:types": "tsx scripts/generate.ts && tsc --noEmit",
"typecheck": "tsc --noEmit",
"lint": "eslint . --ext .ts,.tsx",
"clean": "rimraf dist",
"prepublishOnly": "npm run clean && npm run build",
"prepack": "npm run build",
"size": "size-limit",
"release": "npm run lint && tsx scripts/release.ts",
"prepare": "husky || true",
"postinstall": "tsx scripts/generate.ts || exit 0",
"test:bump": "vitest run --coverage.enabled=true --coverage.reportOnFailure --coverage.provider=v8 --coverage.reporter=text",
"watch": "tsup --watch"
},
"lint-staged": {
"*.{ts,tsx}": [
"eslint --fix"
]
},
"size-limit": [
{
"path": "dist/src/index.js",
"limit": "10 KB"
},
{
"path": "dist/src/index.cjs",
"limit": "10 KB"
}
],
"peerDependencies": {
"@tanstack/react-query": "^5.0.0",
"axios": "^1.0.0",
"react": "^18.0.0 || ^19.0.0",
"vite": "^6.2.2",
"zod": "^3.0.0"
},
"dependencies": {
"@babel/parser": "^7.26.10",
"@babel/traverse": "^7.26.10",
"@babel/types": "^7.26.10",
"@tanstack/react-query": "^5.0.0",
"chokidar": "^3.5.3",
"commander": "^12.0.0",
"fs-extra": "^11.2.0",
"glob": "^10.3.10",
"openapi-types": "^12.1.3",
"openapi-typescript": "^6.7.4",
"openapi-typescript-codegen": "^0.27.0",
"swagger2openapi": "^7.0.8",
"tsx": "^4.7.1",
"zod": "^3.0.0"
},
"devDependencies": {
"@size-limit/preset-small-lib": "^11.2.0",
"@testing-library/jest-dom": "^6.6.3",
"@testing-library/react": "^16.2.0",
"@types/fs-extra": "^11.0.4",
"@types/glob": "^8.1.0",
"@types/node": "^20.11.19",
"@types/react": "^18.3.18",
"@types/swagger2openapi": "^7.0.4",
"@typescript-eslint/eslint-plugin": "^7.0.1",
"@typescript-eslint/parser": "^7.0.1",
"@vitejs/plugin-react": "^4.3.4",
"@vitest/coverage-v8": "^3.0.9",
"eslint": "^8.56.0",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-prettier": "^5.1.3",
"eslint-plugin-react": "^7.37.4",
"eslint-plugin-react-hooks": "^5.2.0",
"husky": "^9.0.11",
"lint-staged": "^15.2.2",
"prettier": "^3.2.5",
"rimraf": "^5.0.5",
"tsup": "^8.0.2",
"typescript": "^5.3.3",
"vite": "^6.2.5",
"vitest": "^3.0.9"
},
"keywords": [
"react",
"typescript",
"api",
"client",
"openapi",
"swagger",
"zod",
"react-query",
"file-based-routing"
],
"publishConfig": {
"access": "public"
},
"engines": {
"node": ">=18"
}
}