tigris-static-assets

Deploy static assets to Tigris object storage with cache headers and framework CDN configuration.

Updated Sep 11, 2026
One-click install
npx skills add https://github.com/celeroncoder/skills --skill tigris-static-assets-celeroncoder
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: tigris-static-assets
Source: https://github.com/celeroncoder/skills/tree/main/tigris-static-assets
Command: npx skills add https://github.com/celeroncoder/skills --skill tigris-static-assets-celeroncoder

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires @tigrisdata/cli, @tigrisdata/storage, django-storages, tigris-boto3-ext, aws-sdk-s3, and includes references (resource) components.

What problem does it solve? Serving CSS, JavaScript, fonts, and build artifacts through your application server wastes bandwidth and slows global delivery. This Skill guides you through uploading static assets to Tigris public buckets with correct cache headers and wiring your framework's asset URL to the Tigris CDN endpoint. ## Core Features & Use Cases - Cache Header Configuration: Set Cache-Control: public, max-age=31536000, immutable on content-hashed assets and short-lived headers on mutable files via the Tigris CLI or SDK. - Framework Integration Guides: Step-by-step configs for Next.js (assetPrefix), Remix (Vite base), Rails (config.asset_host with S3 sync), Django (collectstatic with S3StaticStorage), Laravel (ASSET_URL with S3 disk), and Express (redirect pattern). - Cache-Busting Strategies: Compare content-hashed filenames, query strings, and directory versioning to pick the right invalidation approach. - Use Case: After running next build, upload .next/static/ to a public Tigris bucket with immutable cache headers, then set assetPrefix to the bucket URL so all static assets are served from Tigris edge locations. ## Quick Start Ask the assistant to deploy your Next.js static assets to Tigris with immutable cache headers and configure the asset prefix.

Frequently Asked Questions about tigris-static-assets

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I deploy static assets to Tigris?▼

Build your assets with content-hashed filenames, then upload them to a public Tigris bucket using `tigris cp` with the recursive flag and a Cache-Control header of `public, max-age=31536000, immutable`. Finally, point your framework's asset URL to the bucket domain.

How to configure Next.js assetPrefix with Tigris?▼

Set `assetPrefix` in next.config.js to your Tigris bucket URL (e.g., https://my-app-assets.t3.storage.dev) in production only. After `next build`, upload the `.next/static/` directory to the matching bucket path with immutable cache headers.

What Cache-Control header should static assets use?▼

Content-hashed assets like `main-abc123.js` should use `Cache-Control: public, max-age=31536000, immutable`. Mutable files such as manifests or index.html should use `public, max-age=0, must-revalidate` so browsers revalidate them.

Does Django collectstatic work with Tigris?▼

Yes, Django works with Tigris through django-storages and the S3StaticStorage backend pointed at the Tigris endpoint https://t3.storage.dev. Set AWS_S3_CUSTOM_DOMAIN to your bucket domain and run `python manage.py collectstatic` to upload.

Tigris vs WhiteNoise for serving static files?▼

WhiteNoise serves static files directly from your application server, adding load to it. Tigris stores assets in a public bucket served from global edge locations, offloading delivery from your app server entirely.

When should I not use long-lived immutable cache headers?▼

Never set long cache times on mutable filenames, because browsers will keep serving the stale cached copy. Only use immutable headers with content-hashed filenames, and use must-revalidate for files whose names stay constant.