Files
ferrum/docs/404.html
T
Anand 4ae41a6f1d Add public docs/demo site, fix logout getting stuck on loading
- docs/: GitHub Pages site (landing page, docs, live click-through demo)
  served straight from /docs, no build step.
- web-demo/: source for the demo (a copy of web/ with its API layer mocked
  in-memory) — see web-demo/README.md to rebuild docs/demo after a change.
- web/src/lib/auth.tsx: signOut() no longer clears the whole query cache;
  wiping ["auth","setup-status"] forced it to refetch and re-armed
  `loading`, stranding the user on a loading/failed screen instead of the
  Login page. Only non-auth queries are dropped now.
- .gitignore: exclude web-demo/node_modules and web-demo/dist (build output,
  already published as docs/demo).
- Drop PRODUCT.md (internal planning brief, not meant for the public repo).
- README: link the new docs/demo site.
2026-09-12 15:22:55 +05:30

23 lines
844 B
HTML

<!doctype html>
<html lang="en">
<head><meta charset="utf-8"><title>Ferrum</title></head>
<body>
<script>
// GitHub Pages serves plain files, so the only route inside the demo that
// can 404 is the console viewer — it opens as a real new-tab navigation to
// "/console?..." (see web/src/lib/console.ts's buildConsoleUrl), which
// needs to become a hash route ("#/console?...") for the demo's
// HashRouter to pick it up client-side. Reroute that one case back into
// the demo; anything else 404s for a real reason and just goes home.
var p = location.pathname;
var i = p.indexOf("/demo/");
if (i !== -1) {
var base = p.slice(0, i + 6); // "..../demo/"
location.replace(base + "index.html#" + p.slice(i + 5) + location.search);
} else {
location.replace(location.origin + "/");
}
</script>
</body>
</html>