# File Storage & CDN (https://www.librechat.ai/docs/configuration/cdn)

import { S3Icon, AzureIcon, AWSIcon, FirebaseIcon } from '@/components/icons/providers'

<Callout type="info" title="Note">
  LibreChat supports local storage, object storage backends, and CDN-backed delivery. Use an object
  storage backend such as S3 or Azure Blob Storage for durable file storage, then add a CDN like
  CloudFront when you need stable media links, edge caching, signed cookies, or signed download URLs.
</Callout>

## File Storage

Durable object storage backends for user uploads, generated images, and other files.

<Cards num={2}>
  <Cards.Card icon={<S3Icon />} title="Amazon S3" href="/docs/configuration/cdn/s3" arrow>
    Set up an Amazon S3 bucket as a durable, scalable object storage backend.
  </Cards.Card>
  <Cards.Card icon={<AzureIcon />} title="Azure Blob Storage" href="/docs/configuration/cdn/azure" arrow>
    Use Azure Blob Storage containers as your file storage backend.
  </Cards.Card>
</Cards>

## CDN

Edge-cached delivery for stable media links, signed cookies, and signed download URLs.

<Cards num={2}>
  <Cards.Card icon={<AWSIcon />} title="CloudFront with S3" href="/docs/configuration/cdn/cloudfront" arrow>
    Serve S3-backed files through CloudFront for edge caching and signed URLs.
  </Cards.Card>
  <Cards.Card icon={<FirebaseIcon />} title="Firebase CDN" href="/docs/configuration/cdn/firebase" arrow>
    Deliver files through Firebase Storage backed by Google's CDN.
  </Cards.Card>
</Cards>
