Skip to content

docs(v3): make routing platform-conditional (history on web, hash on …#275

Merged
inna-bieshulia merged 1 commit into
masterfrom
fix/DEV-1306-staging
Jun 7, 2026
Merged

docs(v3): make routing platform-conditional (history on web, hash on …#275
inna-bieshulia merged 1 commit into
masterfrom
fix/DEV-1306-staging

Conversation

@galisufyan-327

Copy link
Copy Markdown
Contributor

…native)

The V3 AI builder fetches these docs as its canonical routing reference, and they mandated path-based History API on every platform with hash routing forbidden. On native (Cordova file://) WebKit blocks history.pushState() from changing a file: URL's path, so createWebHistory / path pushState throw a SecurityError and the screen goes blank.

Bring the docs in line with the studio skills + lintV3Boot:

  • routing.md: contract, requirement Server-side widget rendering #1, forbidden-patterns table (hash rows now platform-conditional; add unguarded-web-history and react-browser-router rows matching the lint ruleIds), and all five framework examples branch on Fliplet.Router.isNative().
  • vue/vanilla/alpine: platform-conditional history backend + DO/DON'T.
  • react: createBrowserRouter+basename -> createHashRouter (no basename); the studio lint now rejects createBrowserRouter.
  • overview: constraints + comparison tables.
  • fliplet-router.md: fix example and document the new isNative() / getHistoryMode() methods.
  • app-bootstrap / auth: routing pointer + logout redirect guidance.
  • Frontmatter descriptions updated so native/hash routing is searchable.

…native)

The V3 AI builder fetches these docs as its canonical routing reference,
and they mandated path-based History API on every platform with hash
routing forbidden. On native (Cordova file://) WebKit blocks
history.pushState() from changing a file: URL's path, so createWebHistory
/ path pushState throw a SecurityError and the screen goes blank.

Bring the docs in line with the studio skills + lintV3Boot:
- routing.md: contract, requirement #1, forbidden-patterns table (hash
  rows now platform-conditional; add unguarded-web-history and
  react-browser-router rows matching the lint ruleIds), and all five
  framework examples branch on Fliplet.Router.isNative().
- vue/vanilla/alpine: platform-conditional history backend + DO/DON'T.
- react: createBrowserRouter+basename -> createHashRouter (no basename);
  the studio lint now rejects createBrowserRouter.
- overview: constraints + comparison tables.
- fliplet-router.md: fix example and document the new isNative() /
  getHistoryMode() methods.
- app-bootstrap / auth: routing pointer + logout redirect guidance.
- Frontmatter descriptions updated so native/hash routing is searchable.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@inna-bieshulia inna-bieshulia merged commit 6d87c82 into master Jun 7, 2026
3 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants