mirror of
https://github.com/anand34577/ferrum.git
synced 2026-09-21 01:53:19 +00:00
4ae41a6f1d
- 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.
23 lines
844 B
HTML
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>
|