\*\* **Updated with nitro plugin approach** \*\*

I'm using `Playwright` server-side to get some data from a page that I want to use in my frontend, this the setup using nitro plugin

* Base Project Structure

```
pages
  index.vue
server
  db
    index.js
  plugins
    playwright.js
  routes
    playwright.js
...

```
* `server/db/index.js`

```js
export const db = [];

```
* `server/routes/playwright.js`

```js
import { db } from '../db';
export default defineEventHandler(() => db);

```
* `server/plugins/playwright.js`

```js
import { chromium } from 'playwright';

export default defineNitroPlugin(async () => { 
  const browser = await chromium.launch();
  // ...
  // some operations goes here
  // and some console logs for tracking progress
  // ...
  db.push(results); // results is the scraped data
});

```

On running `nuxt dev`, the script in `plugins/playwright` starts, opens the browser, scrape the data and store it to `db` **with all my `console.log` logged to the terminal (this is different in prod)**.

When I open local host I get the index page with the fetched data from db with no errors.

However on running `nuxt generate` the CLI runs as usual and I see **only some of the console.logs** printed to terminal as following

```js
yarn run v1.22.19
$ nuxt generate
Nuxi 3.0.0
Nuxt 3.0.0 with Nitro 1.0.0  

WARN  Using experimental payload extraction for full-static output. 
You can opt-out by setting experimental.payloadExtraction to false. 

i Client built in 1666ms
i Building server...  
√ Server built in 581ms
√ Generated public .output/public
i Initializing prerenderer
 Starting Playwright server plugin
⚙️ Read User-specifed options
 Initiating a new page
// There are more console.logs than these three 
i Prerendering 3 initial routes with crawler

  ├─ / (290ms)
  ├─ /200.html (3ms)
  ├─ /404.html (5ms)
  ├─ /_payload.js (2ms)
√ You can now deploy .output/public to any static hosting!
Done in 6.21s.
 *  Terminal will be reused by tasks, press any key to close it. 

```

On running `nuxt preview` and openning local host I get the index page with a an empty array (the initial value for `db`)

Do I need to somehow force the `generate` command to wait until the nitro plugin finish executing? and how can I do that?