How to disable artisan serve - laravel

I tried to run serve -s build in my React app after running npm run build.
I get the following error.
Could not open input file: artisan
I think this artisan is from Laravel. How can I run npm serve command rather than Laravel's one.

Related

Laravel, Breeze is not generating "Build" folder

Folder image
Even though I have done the following commands,
"php artisan breeze:install
php artisan migrate
npm install
npm run dev"
the build folder is not generating.

laravel showing error when vite not loaded (how to start larvel just with php artisan serve)

I am new to Laravel and I start my Laravel project using php artisan serve but I found that I also have to load Vite from another command prompt using npm run dev in order to make Laravel project run properly is there any method to autoload Vite when I do php artisan serve
when Vite is loaded my code works correctly
scripts in package.json
"scripts": {
"dev": "vite",
"build": "vite build"
},
Cause of Problem:
In older versions of Laravel we were using laravel-mix package but now laravel js compiling engine is shifted to vite and it is much more faster.
In the case of mix engine whenever we run npm run dev generate compiled js code in public/js directory. and due to it we need to refresh page manually everytime.
But now In vite when you run npm run dev it just starts a vite server that continuously monitor your changes and reflect those changes on screen immediately. but it's not generate compiled js files in public/js directory
So, when your vite server not running it shows above error.
Solution:
If you want to run laravel without runing vite server by npm run dev you will need to run npm run build. It will generate compiled js files in public/js directory so then you will not have need to run vite server.
Caution: if you run npm run dev after the npm run build command your compiled templates will be removed. So, you will need to run npm run build once again after stopping vite server which is running using npm run dev
npm run dev
with vite is basically what
npm run watch
used to do back with mix.
If you focus on your back-end, try to run prod instead, so that your main page works while you deal with laravel.
Once you get to front-end work and need your js running, you need to have vite up during development. At any point you can stop the process, run a quick prod build and get back to whatever you want.
npm and artisan are two different tools that have nothing to do with each other. They need to run seperately.
You can extend your package.json to automatically start both with npm run serve:
{
...
"scripts": {
...
"serve": "php artisan serve & npm run dev"
},
...
}
It's because of your Node version. Check your Node Version
node -v
if it's below 16, you should upgrade it to the latest one then run
npm install && npm run dev

How can I run php artisan and npm run electron at once?

I tried to run php artisan serve and electron . by using npm but only the php artisan serve is activating. I can access the 127.0.0.1:8000 using the browser but the electron desktop app is not running.
"scripts": {
"electron": "electron .",
"start": "php artisan serve & npm run electron",
}
That's because the execution of the php artisan serve command does not end until you stop it, so the npm run electron command is never going to start.
Trying to run the serve command in background (like using nohup) will result in troubles when stoping the execution of the npm script: The artisan serve process won't stop, so rerunning npm run start will start a new serve process on the next available port: 8001. You would need to find and kill each process manually.
The only option that comes into my mind is to set up an Apache/Nginx VirtualHost so you don't need to run the php artisan serve command.

How to Install Vue.js in Laravel 6.2

i am using laravel 6.2 and now i want install Vue.js.i am trying like this
composer require laravel/ui.
php artisan ui vue.
php artisan ui vue --auth.
npm install.
npm run dev.
but when i try to run command php artisan ui vue its says Could not open input file: artisan
You cant use php artisan if you are not inside a laravel project folder.
That is why it says 'Could not open input file - artisan'.
You need to be inside laravel folder & make sure that artisan file exist there
If you are on Linux/MAC then use ls command, if you are on Windows then use dir command to check your current directory
You cannot use php artisan if you are NOT inside a laravel project folder.
Just use cd to go to your project_directory and try again

Laravel project auto refresh after changes

Does anyone know if there is a way to run the code changes in a Laravel project without refreshing the page every time.
I know that to see the changes I need to
php artisan serve
but I do it every time and it is kind of frustrating.
Thank you anyways.
You can achieve this with Laravel Mix.
According to this part of the documentation, you need to edit your webpack.mix.js file, and add this to the end:
mix.browserSync('127.0.0.1:8000');
It needs to match to the output of the php artisan serve command, where you found a line something like this:
Laravel development server started: <http://127.0.0.1:8000>
After this, you have to run the php artisan serve, and the npm run watch command simultaneously. You must leave to run both commands while you edit your files.
Note: The first time you run the npm run watch, it installs additional components. But the command output is quite clear on that. If everything is in order, Laravel Mix automatically opens your browser with http://localhost:3000, or something like this.
add in webpack.mix.js file in laravel
mix.browserSync('127.0.0.1:8000');
then run this command
> npm install browser-sync browser-sync-webpack-plugin#2.0.1 --save-dev --production=false
after this run npm run watch
> Browsersync automatic run your port 3000
First make sure you install nodejs, After that install laravel-mix
npm install --save-dev laravel-mix
create webpack.mix.js file in root folder for your project and add to it
const mix =require('laravel-mix')
mix.browserSync('127.0.0.1:8000');
Open package.json file and add to script section:
"scripts": {
"watch": "mix watch"
}
Run laravel project
php artisan serve
To update laravel project auto when you make changes run in another terminal:
npm run watch
Updated from Laravel 9.x
you can use vite instead of laravel-mix, you should run this command to install vite:
npm install
Without any configuration, The next line of code will include auto in master page, If you want to include in another master page like admin, you can write it to auto refresh when make changes:
#vite(['resources/sass/app.scss', 'resources/js/app.js'])
After installing vite, run this command
npm run dev
And run
php artisan serve
For more information, view docs
To achieve this you can use Laravel Mix
Ensure that Node.js and NPM are installed:
run node -v and npm -v.
Install Laravel Mix
npm install.
Install browser-sync and browser-sync-webpack-plugin
npm install browser-sync browser-sync-webpack-plugin --save-dev --production=false
Open webpack.mix.js and add this line
mix.browserSync('127.0.0.1:8000');.
Run Project with these two commands: The npm run watch command will continue running in your terminal and watch all relevant CSS and JavaScript files for changes. Webpack will automatically recompile your assets when it detects a change
php artisan serve. and then npm run watch.

Resources