Skip to content

Repository files navigation

Foil Web

Static landing page and SEO content for Foil.

This repo was split out of the macOS app repository so web hosting, analytics, SEO, and marketing iteration can move independently from app release work.

Local Preview

Open index.html directly in a browser, or serve the directory with any static file server:

python3 -m http.server 4173

For the Vercel build output and launch checks:

npm run check:launch

To audit release drift before updating install copy:

npm run check:release

To smoke test a deployed preview or production URL:

SMOKE_URL=https://your-preview.example npm run check:deployed

For production, include the analytics assertion:

EXPECT_POSTHOG=1 EXPECTED_ANALYTICS_ENV=production SMOKE_URL=https://foil.neonwatty.com SITE_URL=https://foil.neonwatty.com npm run check:deployed

The deployed smoke fetches the live launch page inventory, verifies sitemap/canonical parity and deployed local assets, checks the six conversion event hooks, scans for stale GitHub Pages canonicals and unsupported bridge availability claims, and optionally asserts public PostHog config.

Sentry is intentionally not required for the current web launch. If it is activated later, include the Sentry assertion too:

EXPECT_POSTHOG=1 EXPECT_SENTRY=1 EXPECTED_ANALYTICS_ENV=production SMOKE_URL=https://foil.neonwatty.com SITE_URL=https://foil.neonwatty.com npm run check:deployed

Deployment Notes

  • Intended host: Vercel
  • Analytics target: PostHog project BugDrop + Foil (422537)
  • Production canonical default: https://foil.neonwatty.com
  • Vercel build command: npm run build
  • Vercel output directory: dist
  • Set SITE_URL if production moves to another canonical domain.
  • Set POSTHOG_KEY and optional POSTHOG_HOST to enable analytics. When POSTHOG_KEY is unset, the analytics script exits without loading PostHog. Production Vercel currently sets POSTHOG_KEY, POSTHOG_HOST, SITE_URL=https://foil.neonwatty.com, and FOIL_ANALYTICS_ENV=production.
  • sayfoil.com and www.sayfoil.com remain attached to the Vercel project and permanently redirect matching paths to the canonical subdomain.
  • Sentry is not enabled for the current web launch. Leave SENTRY_DSN unset unless browser error monitoring is deliberately activated later; without a DSN, the observability script exits without loading Sentry. See docs/observability.md.
  • Vercel deployment setup and production smoke receipts are documented in docs/deployment.md.
  • Search Console and indexing receipts are documented in docs/seo.md.
  • Public privacy disclosure hygiene is covered by npm run check:privacy and documented in docs/privacy-launch.md.
  • Install/download trust is covered by npm run check:install and documented in docs/install-download.md.
  • Blog conversion hygiene is covered by npm run check:blog and included in npm run check:launch; the page inventory lives in docs/blog-conversion.md.
  • Supabase capture is deferred until there is an approved capture use case, RLS design, retention plan, and privacy/legal approval. See docs/capture.md.
  • .github/workflows/launch-smoke.yml runs local launch checks on pull requests and main; manual dispatch can also test a deployed URL.

About

Landing page and SEO content for Foil

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages