{
  "name": "static-site",
  "title": "Static Site (Certified Assets)",
  "category": "Frontend",
  "description": "Deploy a frontend or any static site to the IC with the @dfinity/static-site recipe (the certified-assets canister). Covers icp.yaml recipe config, SPA routing with _redirects, custom headers/CSP with _headers, clean URLs, access protection for private apps, custom domains, and building against canister IDs. This is the recommended way to host frontends and static files on the IC. Also the entry point for the legacy @dfinity/asset-canister recipe and .ic-assets.json5 (see the legacy reference) and for migrating an existing asset canister to certified-assets. Use when hosting a frontend, deploying static files, an asset canister, or setting up SPA routing on the IC. Do NOT use for canister-level HTTP code patterns or custom domain DNS setup — use custom-domains for DNS.",
  "license": "Apache-2.0",
  "compatibility": "icp-cli >= 1.0.0, Node.js >= 22",
  "updated": "2026-08-07T08:51:06.000Z",
  "urls": {
    "html": "https://skills.internetcomputer.org/skills/static-site/",
    "markdown": "https://skills.internetcomputer.org/.well-known/skills/static-site/SKILL.md",
    "json": "https://skills.internetcomputer.org/api/skills/static-site.json",
    "source": "https://github.com/dfinity/icskills/blob/ae94812fe6707ced1e92d2eb9994b13c27a6f7e8/skills/static-site/SKILL.md"
  },
  "publisher": {
    "name": "DFINITY Foundation",
    "url": "https://dfinity.org"
  },
  "canonicalRepo": {
    "name": "dfinity/icskills",
    "url": "https://github.com/dfinity/icskills"
  }
}
