Repository navigation
feat(ui): add a first-visit welcome and a crawlable what-is page - #71
Merged
Merged
Conversation
A first visit landed on a screen of controls for a machine that is not connected yet, with nothing saying what the app is or what it needs. The static intro in index.html says it, but main.tsx removes it the moment the app mounts. Two pieces, because the app has no URL of its own to give a crawler: - A welcome sheet that opens on its own once, for a browser with no stored walks and no record of having seen it. It is short on purpose: what it does, what it needs, and the safety rule. A "What is Belt Control?" button in the footer reopens it from any screen. - /what-is-belt-control, a written page like the other four in public/, which the sheet's "Read more" links to. It carries the long version, is in the sitemap, is excluded from the SPA rewrite and given the revalidate header, and is linked from the static intro and the footer of every written page — the five edits docs/deploying.md lists for a new page. The seen flag is its own storage key, so Recovery's dump and clear pick it up. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XyxvATqpdrFdrGbkCMayk6
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This branch was successfully deployed
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.
A first visit landed on a screen full of controls for a treadmill that isn't connected yet. Nothing on it said what the app is or what it needs. The static intro in
index.htmldoes explain it, butmain.tsxremoves the intro as soon as the app mounts.The app has no URL of its own for a crawler to index, so this is split into two pieces.
In the app
WelcomeSheetopens by itself once, on a first visit. It only does that when the browser has no stored walks and no record of having seen the sheet, so existing users never get it. It is deliberately short: three things the app does, what it needs (a Chromium browser, with the phone app closed), and the safety rule. It has a Get started button and a Read more link to the full page.wp.welcome.seen.v1, so the Recovery screen's dump and clear include it automatically. One new analytics event,welcome_shown { first }, tells the automatic showing apart from a reopen.For crawlers
/what-is-belt-controlis a static page like the other four inpublic/. It covers what the app is for, how it works, what you need, safety, and who makes it.docs/deploying.mdlists for a new page:vercel.jsonrewrite lookaheadsitemap.xmlindex.htmlstatic intro and from the footer of every written pageChecked
dist/and stamps it into the sitemap.vite preview:🤖 Generated with Claude Code
https://claude.ai/code/session_01XyxvATqpdrFdrGbkCMayk6
Generated by Claude Code