fix(demo): embed console under site nav, fix refresh + deep create - #676
Merged
Conversation
…eate The demo shipped as a full-screen SPA at /demo/. Three problems: a hard refresh on any deep route 404'd (GitHub Pages serves the site 404, not the SPA), the site navigation disappeared, and creating an instance did not carry through to a usable detail view. - Serve the SPA build at /demo-app/ and add a Hugo page at /demo/ (layout demo-app) that renders the site navbar and embeds the app in an iframe. The top URL is always /demo/ (a real page), so a refresh reloads cleanly and the main menu stays above the demo. - Restore mockServiceWorker.js to the overlay. It was missing, so an automated rebuild produced a demo with no mocks (this is what broke refreshes). - Make create work in depth: a deployed instance installs then turns ready, and its Pods/Services/Volumes are synthesized on the fly so the detail tabs are populated. Synthesis is read-time (not a create-time mutation), which also fixes a UI freeze on Deploy. Supersedes #671 (folds in the deploy-progress and richer fixtures). Signed-off-by: tym83 <6355522@gmail.com>
Timur Tukaev (tym83)
requested review from
Andrei Kvapil (kvaps),
Timofei Larkin (lllamnyp) and
myasnikovdaniil
as code owners
September 2, 2026 04:19
✅ Deploy Preview for cozystack ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
Contributor
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Team Run ID: Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes three problems with the live demo reported on the current deployment.
1. Refresh no longer breaks
The demo shipped as a full-screen SPA at
/demo/. On GitHub Pages a hard refresh of any deep route (e.g./demo/console/postgreses) returns the site 404 page, not the SPA — so the demo fell apart on reload. Now the SPA is served at/demo-app/and/demo/is a real Hugo page (layoutdemo-app) that embeds the app in an iframe. The top URL is always/demo/, so a refresh reloads cleanly.Also restores
mockServiceWorker.jsto the overlay — it was missing, so an automated rebuild would produce a demo with no mocks at all (the underlying cause of broken refreshes). This was a latent bug in the weekly refresh.2. Site navigation stays above the demo
The Hugo wrapper renders the normal cozystack.io navbar; the console is embedded below it instead of taking over the whole page.
3. Create works in depth
Deploying a service now installs → turns ready, and its Pods / Services / Volumes are synthesized on the fly so the instance detail tabs are populated (previously a created instance was hollow). Synthesis is read-time, not a create-time mutation, which also fixes a UI freeze on the Deploy button.
Verified end to end in a browser: refresh, the embedded nav, and create → drill into workloads all work.
Supersedes #671 (folds in its deploy-progress and richer fixtures). The weekly
demo-refreshsmoke gate still applies.