# Turborepo Remote Cache > Self-host the Turborepo remote cache on Cloudflare Workers, Node.js, Vercel, or AWS Lambda, with artifacts in R2, KV, or any S3-compatible bucket. ## Get started - [Introduction](https://cloudflare.turborepo-remote-cache.dev/introduction): How turbo uses a remote cache, what this server stores, and who can read it. - [Deploy to Cloudflare](https://cloudflare.turborepo-remote-cache.dev/get-started): Deploy the server as a Cloudflare Worker with R2 storage, set its token, and run your first remote cache hit. - [Connect turbo](https://cloudflare.turborepo-remote-cache.dev/connect-turbo): Give every machine and CI job the server's URL, token, and team, sign artifacts, and confirm that hits come from the remote cache. ## Other platforms - [Choose a platform](https://cloudflare.turborepo-remote-cache.dev/deploy): Build the server for Node.js, Bun, Deno, Vercel, Netlify, or AWS Lambda, and compare how each platform handles expiry and artifact size. - [Node.js, Bun, and Deno](https://cloudflare.turborepo-remote-cache.dev/deploy/node): Run the server as a long-running Node.js, Bun, or Deno process with an S3-compatible bucket. - [Vercel](https://cloudflare.turborepo-remote-cache.dev/deploy/vercel): Deploy the server to Vercel Functions with an S3-compatible bucket, and let Vercel Cron Jobs run the expiry task. - [Netlify](https://cloudflare.turborepo-remote-cache.dev/deploy/netlify): Deploy the server to Netlify Functions with an S3-compatible bucket, and run the expiry task from a scheduler. - [AWS Lambda](https://cloudflare.turborepo-remote-cache.dev/deploy/aws-lambda): Build the server as an AWS Lambda handler with Amazon S3 storage, use the function's role for credentials, and schedule the expiry task. ## Storage - [Choose storage](https://cloudflare.turborepo-remote-cache.dev/storage): The storage backends the server supports, which one to pick, and the order in which the server picks one. - [Cloudflare R2](https://cloudflare.turborepo-remote-cache.dev/storage/r2): Store artifacts in an R2 bucket bound to the Worker, and choose the bucket's name and location. - [Cloudflare KV](https://cloudflare.turborepo-remote-cache.dev/storage/kv): Store artifacts in a Workers KV namespace, within KV's 25 MiB limit per artifact. - [S3-compatible storage](https://cloudflare.turborepo-remote-cache.dev/storage/s3): Store artifacts in Amazon S3, in R2 over its S3 API, in MinIO, or in any other S3-compatible bucket, on every platform. - [Custom storage adapter](https://cloudflare.turborepo-remote-cache.dev/storage/custom-adapter): Store artifacts anywhere Files SDK has an adapter, by returning it from apps/api/src/custom-adapter.ts. ## Operate - [Configuration](https://cloudflare.turborepo-remote-cache.dev/configuration): Every environment variable, binding, and endpoint of the server, with its default and the platforms it applies to. - [Retention and expiry](https://cloudflare.turborepo-remote-cache.dev/retention): Change how long the server keeps artifacts, change or stop the daily expiry task, and run expiry on demand. - [Upgrade from v4](https://cloudflare.turborepo-remote-cache.dev/upgrade-from-v4): What an existing Cloudflare deployment must change for version 5, what breaks, and which stored artifacts keep working. ## API - [Turborepo Remote Cache API](https://cloudflare.turborepo-remote-cache.dev/api): This reference is the official Turborepo Remote Cache specification. The server implements every operation in it. ### artifacts - [Get remote caching status](https://cloudflare.turborepo-remote-cache.dev/api/artifacts/get-artifact-status): Check the status of Remote Caching for the authenticated user or team.… Reference for the GET /artifacts/status endpoint in the Turborepo Remote Cache API. - [Check if artifact exists](https://cloudflare.turborepo-remote-cache.dev/api/artifacts/artifact-exists): Check that a cache artifact with the given hash exists. This request… Reference for the HEAD /artifacts/{hash} endpoint in the Turborepo Remote Cache API. - [Download a cache artifact](https://cloudflare.turborepo-remote-cache.dev/api/artifacts/download-artifact): Downloads a cache artifact identified by its hash specified on the… Reference for the GET /artifacts/{hash} endpoint in the Turborepo Remote Cache API. - [Upload a cache artifact](https://cloudflare.turborepo-remote-cache.dev/api/artifacts/upload-artifact): Uploads a cache artifact identified by the hash specified on the path.… Reference for the PUT /artifacts/{hash} endpoint in the Turborepo Remote Cache API. - [Query artifact information](https://cloudflare.turborepo-remote-cache.dev/api/artifacts/query-artifacts): Query information about multiple artifacts by their hashes. Returns metadata… Reference for the POST /artifacts endpoint in the Turborepo Remote Cache API. ### analytics - [Record cache usage events](https://cloudflare.turborepo-remote-cache.dev/api/analytics/record-cache-events): Records cache usage analytics events. The body of this request is an… Reference for the POST /artifacts/events endpoint in the Turborepo Remote Cache API. ## Other - [Turborepo Remote Cache](https://cloudflare.turborepo-remote-cache.dev/): A Turborepo remote cache you host yourself, on Cloudflare Workers or any platform Nitro builds for. ## Agent skills - [turborepo-remote-cache](https://cloudflare.turborepo-remote-cache.dev/.well-known/agent-skills/turborepo-remote-cache/SKILL.md): Read the Turborepo Remote Cache docs instead of answering from memory. Self-host the Turborepo remote cache on Cloudflare Workers, Node.js, Vercel, or AWS Lambda, with artifacts in R2, KV, or any S3-compatible bucket. Use when a task involves Turborepo Remote Cache: how it works, how to set it up or configure it, or its API. ## Agent resources - [llms-full.txt](https://cloudflare.turborepo-remote-cache.dev/llms-full.txt): The full Markdown of every page in one file. - [Page Markdown](https://cloudflare.turborepo-remote-cache.dev/index.md): Append `.md` to any page URL to fetch that page as raw Markdown. - [JSON API](https://cloudflare.turborepo-remote-cache.dev/api/docs/pages.json): Page index of the JSON docs API; each entry links the page's JSON and Markdown forms. Described by the OpenAPI document at https://cloudflare.turborepo-remote-cache.dev/openapi.json. - [Agent skills](https://cloudflare.turborepo-remote-cache.dev/.well-known/agent-skills/index.json): Agent Skills discovery index of the skills this site publishes. - [API catalog](https://cloudflare.turborepo-remote-cache.dev/.well-known/api-catalog): RFC 9727 linkset of the APIs documented here. - [AI catalog](https://cloudflare.turborepo-remote-cache.dev/.well-known/ai-catalog.json): ARD manifest of the agent-facing resources on this site (MCP server, skills, APIs). - [agent-readability.json](https://cloudflare.turborepo-remote-cache.dev/agent-readability.json): Manifest of every agent-facing artifact on this site. - [Sitemap](https://cloudflare.turborepo-remote-cache.dev/sitemap.xml): Every indexable page URL with its last-modified date.