Vite manifest not found in Laravel - Rocketeers app

  [ Rocketeers ](/)   

[Login](https://rocketeersapp.com/login) 

 On this page

 Knowledge
---------

Vite manifest not found in Laravel
==================================

### [\#Laravel](https://rocketeersapp.com/knowledge/laravel)

This error means Laravel cannot find your compiled frontend assets. Either the dev server is not running, or you never built your assets for production.

 Published by [Mark van Eijk](https://rocketeersapp.com/author/mark-van-eijk) on June 23, 2026 · 1 minute read

1. [About the error](#content-about-the-error)
2. [Why do I see this error](#content-why-do-i-see-this-error)
3. [Solution](#content-solution)
4. [In development](#content-in-development)
5. [In production](#content-in-production)
6. [Older projects (Laravel Mix)](#content-older-projects-laravel-mix)

[\#](#content-about-the-error "Permalink")About the error
---------------------------------------------------------

The message reads:

 ```
Illuminate\Foundation\ViteException: Vite manifest not found at: /var/www/public/build/manifest.json

```

The `@vite` directive in your Blade layout looks up that `manifest.json` to know which compiled CSS and JS files to load. If the file isn't there, Laravel throws.

[\#](#content-why-do-i-see-this-error "Permalink")Why do I see this error
-------------------------------------------------------------------------

The manifest is generated by Vite when it builds your assets. It's missing because:

- You're in development but the Vite dev server isn't running.
- You're in production but you never ran the build step.
- The `public/build` directory wasn't deployed to the server.

[\#](#content-solution "Permalink")Solution
-------------------------------------------

### [\#](#content-in-development "Permalink")In development

Start the Vite dev server and leave it running alongside your application:

 ```
npm run dev

```

While `npm run dev` is running, `@vite` talks to the dev server directly and no manifest file is needed.

### [\#](#content-in-production "Permalink")In production

Build the assets. This is what generates `public/build/manifest.json`:

 ```
npm install
npm run build

```

Make this part of your deploy process so it runs on every release. If you build locally and deploy, make sure the `public/build` directory is actually uploaded and **not** excluded by a `.gitignore` or rsync filter.

### [\#](#content-older-projects-laravel-mix "Permalink")Older projects (Laravel Mix)

If your project still uses Laravel Mix instead of Vite, the equivalent error mentions `mix-manifest.json`. The fix is the same idea with Mix's commands:

 ```
npm run dev      # development
npm run production   # build for production

```

For zero-downtime deploys where assets are built per release, see [zero downtime PHP deployments](/zero-downtime-php-deployments).

### Subscribe to our newsletter

Do you want to receive regular updates with fresh and exclusive content to learn more about web development, hosting, security and performance? Subscribe now!

  Fill in your email address to receive updates  Subscribe 

#### More in [\#Laravel](https://rocketeersapp.com/knowledge/laravel)

- [How to use different PHP versions with Laravel Valet](https://rocketeersapp.com/knowledge/different-php-versions-laravel-valet)
- [Disable cookies in Laravel](https://rocketeersapp.com/knowledge/disable-cookies-in-laravel)
- [Logging in Laravel](https://rocketeersapp.com/knowledge/laravel-logging)
- [How to check which Laravel version of your app is using](https://rocketeersapp.com/knowledge/check-laravel-version)
- [Disable CSRF in Laravel](https://rocketeersapp.com/knowledge/disable-csrf-in-laravel)
- [Creating an encrypted cookie value in Laravel](https://rocketeersapp.com/knowledge/creating-an-encrypted-cookie-value-in-laravel)

 [View all 19 articles →](https://rocketeersapp.com/knowledge/laravel)
