anomalyco/sst · error · VisibleError

No site found at "${path.resolve(sitePath)}".

Error message

No site found at "${path.resolve(sitePath)}".

What it means

normalizeSitePath validates the `path` argument of a static site component: if the configured path does not exist on disk, it throws this error with the resolved absolute path to make the misconfiguration obvious.

Source

Thrown at platform/src/components/base/base-static-site.ts:219

export function prepare(args: BaseStaticSiteArgs) {
  const sitePath = normalizeSitePath();
  const environment = normalizeEnvironment();
  const indexPage = normalizeIndexPage();
  generateViteTypes();

  return {
    sitePath,
    environment,
    indexPage,
  };

  function normalizeSitePath() {
    return output(args.path).apply((sitePath) => {
      if (!sitePath) return ".";

      if (!fs.existsSync(sitePath)) {
        throw new VisibleError(`No site found at "${path.resolve(sitePath)}".`);
      }
      return sitePath;
    });
  }

  function normalizeEnvironment() {
    return output(args.environment).apply((environment) => environment ?? {});
  }

  function normalizeIndexPage() {
    return output(args.indexPage).apply(
      (indexPage) => indexPage ?? "index.html",
    );
  }

  function generateViteTypes() {
    return all([sitePath, args.vite, environment]).apply(
      ([sitePath, vite, environment]) => {

View on GitHub (pinned to a0bd20f762)

Solutions

  1. Correct the `path` to the actual directory containing your site (relative to sst.config.ts).
  2. Verify the folder exists locally with the exact name/case (ls).
  3. In CI, ensure the site source is checked out (submodules, monorepo sparse checkout).

Example fix

// before
new sst.aws.StaticSite("Site", { path: "./fronted" });
// after
new sst.aws.StaticSite("Site", { path: "./frontend" });
Defensive patterns

Strategy: validation

Validate before calling

import fs from "node:fs";
import path from "node:path";
const sitePath = "./frontend";
if (!fs.existsSync(sitePath))
  throw new Error(`Site path does not exist: ${path.resolve(sitePath)}`);

Prevention

When it happens

Trigger: `new sst.aws.StaticSite("Site", { path: "./src/site" })` where that directory doesn't exist (typo, wrong cwd, directory not checked out).

Common situations: Running sst.config.ts from a different working directory than expected; misspelled or case-mismatched folder names; missing git submodule or generated directory; deploying in CI without the site folder.

Related errors


AI-assisted analysis of anomalyco/sst@a0bd20f762 (2026-08-30). Data as JSON: /api/errors/8176e1f15a1541a2. Report an issue: GitHub.