UNPKG

pushduck

Version:

The fastest way to add file uploads to any web application. Enterprise security, edge-ready. Works with 16+ frameworks and 5+ storage providers. No heavy AWS SDK required.

199 lines (198 loc) • 5.09 kB
{ "name": "pushduck", "version": "0.1.22", "type": "module", "author": "Abhay Ramesh", "license": "MIT", "description": "The fastest way to add file uploads to any web application. Enterprise security, edge-ready. Works with 16+ frameworks and 5+ storage providers. No heavy AWS SDK required.", "repository": { "type": "git", "url": "https://github.com/abhay-ramesh/pushduck.git" }, "homepage": "https://pushduck.dev", "bugs": { "url": "https://github.com/abhay-ramesh/pushduck/issues" }, "funding": { "type": "github", "url": "https://github.com/sponsors/abhay-ramesh" }, "main": "./dist/index.js", "types": "./dist/index.d.ts", "module": "./dist/index.mjs", "exports": { ".": { "types": "./dist/index.d.ts", "import": "./dist/index.mjs", "require": "./dist/index.js" }, "./server": { "types": "./dist/server.d.ts", "import": "./dist/server.mjs", "require": "./dist/server.js" }, "./client": { "types": "./dist/client.d.ts", "import": "./dist/client.mjs", "require": "./dist/client.js" }, "./adapters": { "types": "./dist/adapters/index.d.ts", "import": "./dist/adapters/index.mjs", "require": "./dist/adapters/index.js" }, "./adapters/nextjs": { "types": "./dist/adapters/nextjs.d.ts", "import": "./dist/adapters/nextjs.mjs", "require": "./dist/adapters/nextjs.js" }, "./adapters/nextjs-pages": { "types": "./dist/adapters/nextjs-pages.d.ts", "import": "./dist/adapters/nextjs-pages.mjs", "require": "./dist/adapters/nextjs-pages.js" }, "./adapters/express": { "types": "./dist/adapters/express.d.ts", "import": "./dist/adapters/express.mjs", "require": "./dist/adapters/express.js" }, "./adapters/fastify": { "types": "./dist/adapters/fastify.d.ts", "import": "./dist/adapters/fastify.mjs", "require": "./dist/adapters/fastify.js" } }, "files": [ "dist/**/*", "README.md", "CHANGELOG.md" ], "scripts": { "dev": "tsdown --watch", "build": "tsdown", "build:analyze": "pnpm build && pnpm bundle:analyze", "bundle:analyze": "pnpm size-check && echo '\nšŸ“ File Details:' && ls -la dist/", "bundle:visualize": "npx esbuild-visualizer dist/index.js --open", "size-check": "node scripts/size-check.js", "lint": "eslint src", "lint:fix": "eslint src --fix", "type-check": "tsc --noEmit", "test": "vitest", "test:watch": "vitest --watch", "test:coverage": "vitest --coverage", "test:ui": "vitest --ui", "clean": "rm -rf dist", "prepublishOnly": "pnpm build", "maintenance:health": "./scripts/health-check.sh", "maintenance:deps": "./scripts/update-deps.sh" }, "keywords": [ "file-upload", "upload", "s3", "aws", "cloudflare-r2", "digitalocean-spaces", "google-cloud-storage", "minio", "presigned-urls", "nextjs", "remix", "sveltekit", "nuxt", "astro", "react", "nextjs app directory", "nextjs app folder", "nextjs 13 app directory file upload", "aws", "aws-s3", "file-upload", "multipart-upload", "chunked-upload", "typescript", "express", "hono", "fastify", "hono", "elysia", "framework-agnostic", "edge-runtime", "cloudflare-workers", "vercel-edge", "serverless", "framework-agnostic", "universal", "enterprise-security", "multipart-upload", "chunked-upload", "upload-library", "web-development", "backend", "frontend" ], "devDependencies": { "@testing-library/react": "^16.3.0", "@testing-library/user-event": "^14.5.1", "@types/express": "^5.0.3", "@types/node": "^24.0.3", "@types/react": "^19.1.8", "@typescript-eslint/eslint-plugin": "^8.35.1", "@typescript-eslint/parser": "^8.36.0", "@vitejs/plugin-react": "^4.1.0", "@vitest/coverage-v8": "^3.2.4", "eslint": "^9.30.0", "eslint-config-prettier": "^10.1.5", "eslint-plugin-prettier": "^5.0.0", "express": "^5.1.0", "fastify": "^5.4.0", "gzip-size-cli": "^5.1.0", "happy-dom": "^18.0.1", "next": "^15.3.4", "prettier": "^3.6.2", "react": "^19.1.0", "tsdown": "^0.12.8", "typescript": "^5.2.2", "vitest": "^3.2.4", "zod": "^4.0.5" }, "peerDependencies": { "@types/express": "*", "express": ">=4.18.0", "fastify": ">=4.0.0", "next": ">=13.0.0", "react": ">=18.0.0", "zod": ">=3.20.0" }, "peerDependenciesMeta": { "zod": { "optional": true }, "next": { "optional": true }, "react": { "optional": true }, "express": { "optional": true }, "@types/express": { "optional": true }, "fastify": { "optional": true } }, "publishConfig": { "access": "public" }, "engines": { "node": ">=16.0.0", "npm": ">=8.0.0" }, "sideEffects": false, "dependencies": { "aws4fetch": "^1.0.20" } }