> For the complete documentation index, see [llms.txt](https://jho406.gitbook.io/breezy/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://jho406.gitbook.io/breezy/docs/recipes/turbo.md).

# Replicating Turbo behavior

With `data-sg-visit`, Superglue will always wait for a response before a navigation transition. Turbo's behavior is to transition first if possible while waiting for the response. To replicate this behavior:

In your `application_visit.js` file:

```diff

+ import { urlToPageKey } from '@thoughtbot/superglue'

const appVisit = (...args) => {

  const pageKey = urlToPageKey(args[0])
+ // attempt to navigate first
+ ref.current?.navigateTo(pageKey)

  return store
    .dispatch(visit(...args))
    ....
```

This is different from [restore strategy](/breezy/docs/page-response.md#restorestrategy) which controls what happens when the browser's `history` object pops.
