{"_id":"@alt-stack/server-tanstack-start","_rev":"7-0fa876837b34d5b2fd37aca3cdb6f7f1","name":"@alt-stack/server-tanstack-start","dist-tags":{"latest":"1.6.2"},"versions":{"0.0.0":{"name":"@alt-stack/server-tanstack-start","version":"0.0.0","keywords":[],"author":"","license":"MIT","_id":"@alt-stack/server-tanstack-start@0.0.0","maintainers":[{"name":"aaltieri","email":"anthony@timebyping.com"}],"dist":{"shasum":"89d5e6829cd843ea608db29b159f25e939b54583","tarball":"https://registry.npmjs.org/@alt-stack/server-tanstack-start/-/server-tanstack-start-0.0.0.tgz","fileCount":18,"integrity":"sha512-V8dpTvwvtzKuBXRIaAiEzZm1VyfYmptOC93McbcYOO/toSnetoydWjNOJOwbegVLXI00Dkd6wqe2pulUkChEAg==","signatures":[{"sig":"MEYCIQDuiT6hmbGN/67jEJ0GCh5U7nlooQfp9DLOiFBtlx8TAAIhAJCjJ2RCLuWpXegWOJ2xljpQ+QVunOJwEjSu9Uddr17k","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":173690},"main":"./dist/index.js","_from":"file:alt-stack-server-tanstack-start-0.0.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"test":"vitest","build":"tsup","check-types":"tsc --noEmit"},"_npmUser":{"name":"aaltieri","email":"anthony@timebyping.com"},"_resolved":"/tmp/acc212c4a268a3d5087e052db4405a65/alt-stack-server-tanstack-start-0.0.0.tgz","_integrity":"sha512-V8dpTvwvtzKuBXRIaAiEzZm1VyfYmptOC93McbcYOO/toSnetoydWjNOJOwbegVLXI00Dkd6wqe2pulUkChEAg==","_npmVersion":"10.8.2","description":"TanStack Start server route adapter for Alt Stack","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@alt-stack/server-core":"0.4.4"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.0.0","tsup":"^8.0.0","oxlint":"^1.24.0","vitest":"^4.0.3","typescript":"^5.9.2","@opentelemetry/api":"^1.9.0","@tanstack/react-router":"^1.170.9","@opentelemetry/sdk-trace-base":"^2.2.0","@opentelemetry/sdk-trace-node":"^2.2.0"},"peerDependencies":{"zod":"^4.0.0","@tanstack/react-router":"^1.170.9"},"_npmOperationalInternal":{"tmp":"tmp/server-tanstack-start_0.0.0_1780423375054_0.3911646214869924","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@alt-stack/server-tanstack-start","version":"1.4.0","keywords":[],"author":"","license":"MIT","_id":"@alt-stack/server-tanstack-start@1.4.0","maintainers":[{"name":"aaltieri","email":"anthony@timebyping.com"}],"dist":{"shasum":"e1c26d860ee059057a3f0de92b0b9357fb3b7c77","tarball":"https://registry.npmjs.org/@alt-stack/server-tanstack-start/-/server-tanstack-start-1.4.0.tgz","fileCount":19,"integrity":"sha512-LbNdVN1RhzOyHgux2TsLXGJBg6nCRl2MVZhjQjbHJlEFpQ4V0CfykrfoToW8xEUIgJVW7c3e7+buklyRBTkQyQ==","signatures":[{"sig":"MEQCIBMmfC+z2Wmy4AfJ5sLhINHIYNMDXS7+40FTZZ8a5ezJAiAWP5IRG/pP0uAyjvqJFUY2iteoRY8ciMQFEwz3l/HNzw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":173909},"main":"./dist/index.js","_from":"file:alt-stack-server-tanstack-start-1.4.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"test":"vitest","build":"tsup","check-types":"tsc --noEmit"},"_npmUser":{"name":"aaltieri","email":"anthony@timebyping.com"},"_resolved":"/tmp/6e378a03e36910abd674b71bcb72c571/alt-stack-server-tanstack-start-1.4.0.tgz","_integrity":"sha512-LbNdVN1RhzOyHgux2TsLXGJBg6nCRl2MVZhjQjbHJlEFpQ4V0CfykrfoToW8xEUIgJVW7c3e7+buklyRBTkQyQ==","_npmVersion":"10.8.2","description":"TanStack Start server route adapter for Alt Stack","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@alt-stack/server-core":"1.4.0"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.0.0","tsup":"^8.0.0","oxlint":"^1.24.0","vitest":"^4.0.3","typescript":"^5.9.2","@opentelemetry/api":"^1.9.0","@tanstack/react-router":"^1.170.9","@opentelemetry/sdk-trace-base":"^2.2.0","@opentelemetry/sdk-trace-node":"^2.2.0"},"peerDependencies":{"zod":"^4.0.0","@tanstack/react-router":"^1.170.9"},"_npmOperationalInternal":{"tmp":"tmp/server-tanstack-start_1.4.0_1783621695314_0.6605737732565262","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@alt-stack/server-tanstack-start","version":"1.5.0","keywords":[],"author":"","license":"MIT","_id":"@alt-stack/server-tanstack-start@1.5.0","maintainers":[{"name":"aaltieri","email":"anthony@timebyping.com"}],"dist":{"shasum":"878d90a5ffc400745c7bb8edf8c94bad48427a2e","tarball":"https://registry.npmjs.org/@alt-stack/server-tanstack-start/-/server-tanstack-start-1.5.0.tgz","fileCount":19,"integrity":"sha512-sJF08g74vcVbvoujCj7jfOk0T2KsciTnM+Bq2FhAIS2EE4Ju1rZUoHmX3FhLgWr6Yy7qIRIrsJSeQz+ol63zyA==","signatures":[{"sig":"MEYCIQCXmmoKFKU83qT1EbRwK2ftjwlPMkntgCGh1SXAmeRMmQIhANGCCgAmwEE6VkqgJOCfgvgBgth0H2G9HwymMXxGdIQg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":174091},"main":"./dist/index.js","_from":"file:alt-stack-server-tanstack-start-1.5.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"test":"vitest","build":"tsup","check-types":"tsc --noEmit"},"_npmUser":{"name":"aaltieri","email":"anthony@timebyping.com"},"_resolved":"/tmp/9cc11c5905a55e16abbbd77034f8e2ee/alt-stack-server-tanstack-start-1.5.0.tgz","_integrity":"sha512-sJF08g74vcVbvoujCj7jfOk0T2KsciTnM+Bq2FhAIS2EE4Ju1rZUoHmX3FhLgWr6Yy7qIRIrsJSeQz+ol63zyA==","_npmVersion":"10.8.2","description":"TanStack Start server route adapter for Alt Stack","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@alt-stack/server-core":"1.5.0"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.0.0","tsup":"^8.0.0","oxlint":"^1.24.0","vitest":"^4.0.3","typescript":"^5.9.2","@opentelemetry/api":"^1.9.0","@tanstack/react-router":"^1.170.9","@opentelemetry/sdk-trace-base":"^2.2.0","@opentelemetry/sdk-trace-node":"^2.2.0"},"peerDependencies":{"zod":"^4.0.0","@tanstack/react-router":"^1.170.9"},"_npmOperationalInternal":{"tmp":"tmp/server-tanstack-start_1.5.0_1783713613255_0.9759107128223043","host":"s3://npm-registry-packages-npm-production"}},"1.5.1":{"name":"@alt-stack/server-tanstack-start","version":"1.5.1","keywords":[],"author":"","license":"MIT","_id":"@alt-stack/server-tanstack-start@1.5.1","maintainers":[{"name":"aaltieri","email":"anthony@timebyping.com"}],"dist":{"shasum":"34d2a6c9f36d656081b155b6ac54b67e24c5e783","tarball":"https://registry.npmjs.org/@alt-stack/server-tanstack-start/-/server-tanstack-start-1.5.1.tgz","fileCount":19,"integrity":"sha512-dEJ2zuHh9u6VxeEDrXtcMv8n367K90LL3/2KtVxGN3UnlNiRRkZeD5CKFs6tGtpDQ/oxC/gjgjhSXQ1ArUT8YA==","signatures":[{"sig":"MEUCIC+7tRstAAj2Vda0U8B6yyhcMpiqFVX3d8oahNuGGbFdAiEAhf/CvJCDNDbXAf1NkqCbAUbNx+qaxIyWUCmZHUwO92k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":174152},"main":"./dist/index.js","_from":"file:alt-stack-server-tanstack-start-1.5.1.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"test":"vitest","build":"tsup","check-types":"tsc --noEmit"},"_npmUser":{"name":"aaltieri","email":"anthony@timebyping.com"},"_resolved":"/tmp/f88448887b5ddf9747754f8b2788d706/alt-stack-server-tanstack-start-1.5.1.tgz","_integrity":"sha512-dEJ2zuHh9u6VxeEDrXtcMv8n367K90LL3/2KtVxGN3UnlNiRRkZeD5CKFs6tGtpDQ/oxC/gjgjhSXQ1ArUT8YA==","_npmVersion":"10.8.2","description":"TanStack Start server route adapter for Alt Stack","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@alt-stack/server-core":"1.5.1"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.0.0","tsup":"^8.0.0","oxlint":"^1.24.0","vitest":"^4.0.3","typescript":"^5.9.2","@opentelemetry/api":"^1.9.0","@tanstack/react-router":"^1.170.9","@opentelemetry/sdk-trace-base":"^2.2.0","@opentelemetry/sdk-trace-node":"^2.2.0"},"peerDependencies":{"zod":"^4.0.0","@tanstack/react-router":"^1.170.9"},"_npmOperationalInternal":{"tmp":"tmp/server-tanstack-start_1.5.1_1784059632027_0.0467839809195254","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@alt-stack/server-tanstack-start","version":"1.6.0","keywords":[],"author":"","license":"MIT","_id":"@alt-stack/server-tanstack-start@1.6.0","maintainers":[{"name":"aaltieri","email":"anthony@timebyping.com"}],"dist":{"shasum":"f6cb027f6af3de1a7a9d12f9087611b6a2fef063","tarball":"https://registry.npmjs.org/@alt-stack/server-tanstack-start/-/server-tanstack-start-1.6.0.tgz","fileCount":19,"integrity":"sha512-/XP6MsfPCrp6VSl7sZ533WhGW7m7gV7RsYKPC+KbwclgtVGdxuQqdX+ikWHoFNXAAzXBQrbUHycqX4nKDxuRSA==","signatures":[{"sig":"MEUCIQDovMUwuNUNXhN0Ez8S9AXWo0/AKRX1XQYg5N6xoU/CEQIgaW708XveEibIcYFFVGlbyf/Uyvqc5uomizejzgPrPi4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":174211},"main":"./dist/index.js","_from":"file:alt-stack-server-tanstack-start-1.6.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"test":"vitest","build":"tsup","check-types":"tsc --noEmit"},"_npmUser":{"name":"aaltieri","email":"anthony@timebyping.com"},"_resolved":"/tmp/a32fe09bb3b22946155ba99e325b0744/alt-stack-server-tanstack-start-1.6.0.tgz","_integrity":"sha512-/XP6MsfPCrp6VSl7sZ533WhGW7m7gV7RsYKPC+KbwclgtVGdxuQqdX+ikWHoFNXAAzXBQrbUHycqX4nKDxuRSA==","_npmVersion":"10.8.2","description":"TanStack Start server route adapter for Alt Stack","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@alt-stack/server-core":"1.6.0"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.0.0","tsup":"^8.0.0","oxlint":"^1.24.0","vitest":"^4.0.3","typescript":"^5.9.2","@opentelemetry/api":"^1.9.0","@tanstack/react-router":"^1.170.9","@opentelemetry/sdk-trace-base":"^2.2.0","@opentelemetry/sdk-trace-node":"^2.2.0"},"peerDependencies":{"zod":"^4.0.0","@tanstack/react-router":"^1.170.9"},"_npmOperationalInternal":{"tmp":"tmp/server-tanstack-start_1.6.0_1784714959412_0.4120820101922311","host":"s3://npm-registry-packages-npm-production"}},"1.6.1":{"name":"@alt-stack/server-tanstack-start","version":"1.6.1","keywords":[],"author":"","license":"MIT","_id":"@alt-stack/server-tanstack-start@1.6.1","maintainers":[{"name":"aaltieri","email":"anthony@timebyping.com"}],"dist":{"shasum":"1b645c40fc796c5c34a099cf8ab575c55a012a70","tarball":"https://registry.npmjs.org/@alt-stack/server-tanstack-start/-/server-tanstack-start-1.6.1.tgz","fileCount":19,"integrity":"sha512-lkFz2askOSE4TbfkJqfL4W5ukCqt0EFZjHQRQHNcOJPmliSm6eZ8gRFxvQmuaPK5L1+WYw2yFqzfe9MKdHXlrw==","signatures":[{"sig":"MEUCIF5TI5+yoTEbZMi8BK7upLjdXGO7YBlDt/aTj2PI3yEqAiEApEonmEPBVKgFAc/0k4BAPLXcH01yHMm8rXH7UEI9qto=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":174274},"main":"./dist/index.js","_from":"file:alt-stack-server-tanstack-start-1.6.1.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"test":"vitest","build":"tsup","check-types":"tsc --noEmit"},"_npmUser":{"name":"aaltieri","email":"anthony@timebyping.com"},"_resolved":"/tmp/9f15bae2b147f4cd21bbe88eac3244c2/alt-stack-server-tanstack-start-1.6.1.tgz","_integrity":"sha512-lkFz2askOSE4TbfkJqfL4W5ukCqt0EFZjHQRQHNcOJPmliSm6eZ8gRFxvQmuaPK5L1+WYw2yFqzfe9MKdHXlrw==","_npmVersion":"10.8.2","description":"TanStack Start server route adapter for Alt Stack","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@alt-stack/server-core":"1.6.1"},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.0.0","tsup":"^8.0.0","oxlint":"^1.24.0","vitest":"^4.0.3","typescript":"^5.9.2","@opentelemetry/api":"^1.9.0","@tanstack/react-router":"^1.170.9","@opentelemetry/sdk-trace-base":"^2.2.0","@opentelemetry/sdk-trace-node":"^2.2.0"},"peerDependencies":{"zod":"^4.0.0","@tanstack/react-router":"^1.170.9"},"_npmOperationalInternal":{"tmp":"tmp/server-tanstack-start_1.6.1_1785249168742_0.4980990834151082","host":"s3://npm-registry-packages-npm-production"}},"1.6.2":{"name":"@alt-stack/server-tanstack-start","version":"1.6.2","description":"TanStack Start server route adapter for Alt Stack","main":"./dist/index.js","module":"./dist/index.mjs","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"keywords":[],"author":"","license":"MIT","dependencies":{"@alt-stack/server-core":"1.6.2"},"peerDependencies":{"@tanstack/react-router":"^1.170.9","zod":"^4.0.0"},"devDependencies":{"@opentelemetry/api":"^1.9.0","@opentelemetry/sdk-trace-base":"^2.2.0","@opentelemetry/sdk-trace-node":"^2.2.0","@tanstack/react-router":"^1.170.9","oxlint":"^1.24.0","tsup":"^8.0.0","typescript":"^5.9.2","vitest":"^4.0.3","zod":"^4.0.0"},"scripts":{"build":"tsup","test":"vitest","check-types":"tsc --noEmit"},"_id":"@alt-stack/server-tanstack-start@1.6.2","_integrity":"sha512-hxJ3Ow6FQk+U/Os3jCM99dpAW7QcymLNhj1yWezEXzyfKH88IHkC6YfLDigARW8A5eT4HrESXVZovvP8mLFuOA==","_resolved":"/tmp/216feafbc94ea2e3e6efe3f7b60b7b58/alt-stack-server-tanstack-start-1.6.2.tgz","_from":"file:alt-stack-server-tanstack-start-1.6.2.tgz","_nodeVersion":"20.20.2","_npmVersion":"10.8.2","dist":{"integrity":"sha512-hxJ3Ow6FQk+U/Os3jCM99dpAW7QcymLNhj1yWezEXzyfKH88IHkC6YfLDigARW8A5eT4HrESXVZovvP8mLFuOA==","shasum":"a8ce9544c063a36973d3c8108ea5399c5fd98e39","tarball":"https://registry.npmjs.org/@alt-stack/server-tanstack-start/-/server-tanstack-start-1.6.2.tgz","fileCount":19,"unpackedSize":174370,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDMrv4+hqfXWLo+g7r9EB/9xzZymhJuWCqyGjYUmgZtMwIhAKvyuBbhhPCLxIcGzRHRrBiSwdcRPtKofIGG38Ox1xCy"}]},"_npmUser":{"name":"aaltieri","email":"anthony@timebyping.com"},"directories":{},"maintainers":[{"name":"aaltieri","email":"anthony@timebyping.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/server-tanstack-start_1.6.2_1787164491131_0.6575728621343317"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-02T18:02:54.899Z","modified":"2026-08-19T18:34:51.419Z","0.0.0":"2026-06-02T18:02:55.251Z","1.4.0":"2026-07-09T18:28:15.463Z","1.5.0":"2026-07-10T20:00:13.414Z","1.5.1":"2026-07-14T20:07:12.220Z","1.6.0":"2026-07-22T10:09:19.550Z","1.6.1":"2026-07-28T14:32:48.869Z","1.6.2":"2026-08-19T18:34:51.273Z"},"license":"MIT","keywords":[],"description":"TanStack Start server route adapter for Alt Stack","maintainers":[{"name":"aaltieri","email":"anthony@timebyping.com"}],"readme":"# `@alt-stack/server-tanstack-start`\n\nTanStack Start file-route adapter for Altstack procedures. It creates idiomatic uppercase `server.handlers`, attaches source metadata for OpenAPI generation, and preserves other TanStack route options.\n\n## Quickstart\n\n```bash\npnpm add @alt-stack/server-tanstack-start @tanstack/react-router zod\n```\n\nIn a generated file route such as `routes/api/users/$id.ts`:\n\n```typescript\nimport {\n  createAltStackFileRoute,\n  init,\n  ok,\n  type TanStackBaseContext,\n} from \"@alt-stack/server-tanstack-start\";\nimport { z } from \"zod\";\n\nconst t = init<TanStackBaseContext>();\n\nexport const Route = createAltStackFileRoute(\"/api/users/$id\")({\n  server: {\n    handlers: {\n      GET: t.procedure\n        .input({ params: z.object({ id: z.string() }) })\n        .output(z.object({ id: z.string() }))\n        .handler(({ input }) => ok({ id: input.params.id })),\n    },\n  },\n});\n```\n\nUse uppercase method keys with pending `.handler()` procedures. `$id` is recorded as `{id}` and requires an `input.params.id` schema. The path must exist in TanStack's generated `FileRoutesByPath` type.\n\nSee the full [server quickstart](../../apps/docs/docs/server/quickstart.md).\n\n## CORS\n\nThis adapter has no `cors` option because TanStack Start exposes no dedicated native CORS facility. Configure CORS through Start request or route middleware, or a custom server entry; Alt Stack does not synthesize a CORS policy or preflight handler.\n\n## Common Patterns\n\n- Put application context creation in `server.createContext({ request, params, context })`; the adapter supplies `ctx.tanstack`.\n- Return `ok(new Response(...))` for custom statuses or non-JSON bodies.\n- Use `defineServerRoute()` when another layer owns file-route creation.\n- Pass file routes or defined routes to `generateOpenAPISpecFromServerRoutes()` and serve/write the returned object yourself.\n- Route options and extra server options are forwarded to TanStack; Altstack consumes `handlers`, `createContext`, and `defaultErrorHandlers`.\n\nCurrent caveats: there is no docs UI helper and no automatic telemetry option/span creation. Repeated query keys become arrays. Non-JSON bodies are read as text only when a body schema exists. Output validation is asynchronous (unlike the other adapters). Declared runtime errors are enveloped, while generated OpenAPI schemas are flat and always describe success as 200.\n\nSee [Server common patterns](../../apps/docs/docs/server/common-patterns.md).\n\n## API Documentation\n\n[TanStack Start API Documentation](../../apps/docs/docs/server/api/tanstack-start.md) covers `createAltStackFileRoute`, `defineServerRoute`, `generateOpenAPISpecFromServerRoutes`, path utilities, every public type/property, runtime parsing, response/error behavior, exact core re-exports, and unsupported helpers.\n\n## Peer dependencies\n\n- `@tanstack/react-router` `^1.170.9`\n- `zod` `^4.0.0`\n\n## License\n\nMIT\n","readmeFilename":"README.md"}