Skip to content

How PageFlow works ​

PageFlow combines framework-specific route discovery with a framework-neutral visual client.

1. Discover routes ​

The selected adapter reads the framework's route source. Vue Router and Nuxt expose router records; file-based frameworks contribute routes through their build integrations; React Router accepts route objects; Next.js uses a development sidecar.

2. Start the development runtime ​

The plugin injects a small runtime only while the development server is running. It reports route information, visible navigation targets, page titles, and readiness to the PageFlow endpoint.

3. Render real pages ​

PageFlow opens same-origin application pages in controlled iframes. The selected page remains live, while background pages are captured into bounded thumbnail caches.

4. Detect navigation ​

Adapters recognize supported framework links, same-origin anchors, history changes, literal programmatic destinations, and explicit navigation hints. The client turns these destinations into directed graph edges and preview hotspots.

5. Lay out the graph ​

LeaferJS renders the canvas. Route decks reduce large path hierarchies, a spatial index limits viewport work, and large layouts can run in a Worker.

Production builds ​

PageFlow is development-only. Its runtime endpoints and visual client are not injected into production output. The repository's production-output check verifies this boundary.

Safety boundary ​

Preview mode blocks anchor navigation and form submission inside its controlled frame, but it cannot suppress application initialization side effects. Use local or test data.

Released under the MIT License.