How to debug a script - "webpack serve --config webpack.config.js" - javascript

I have just started working on webpack. Needed to know how do I add a debugger for the start script in package.json
"scripts": {
"start": "webpack serve --config webpack.config.js",
}
I had used
node --inspect earlier. But, not sure how do we debug a webpack.
I tried to search for resources online, but most of them have only told about
webpack --debug <node_modules_path>
How do we debug while serving the webpack?

Related

How do I set webpack mode

I'm trying to configure my script (in package.json) in such a way that I can run webpack in production or development mode via cli.
package.json
"scripts": {
"start": "webpack serve",
"build": "webpack --mode=production"
in my webpack.config.js file, I was expecting process.env.NODE_ENV to equal to whatever I set the mode to be. Instead, I keep getting undefined please how can I make it work
For the Dev Server
First, install webpack-dev-server with following command:
npm install webpack-dev-server
Add following line to the package.json script:
"scripts": {
"start": "webpack-dev-server --mode development"
}
For Production build
Add the following line to the scripts section of package.json:
"build": "node_modules/.bin/webpack --mode production"
The scripts section in package.json with both the dev and production build will look like this:
"scripts": {
"build": "node_modules/.bin/webpack --mode production",
"start": "webpack-dev-server --mode development"
}

why the webpack 5 server did not generate the build folder

I am using webpack 5 to package the project, when I start the project using this command in package.json:
"start": "rm -rf build && webpack serve --mode development --config config/webpack.dev.config.js",
To my surprise the project folder did not generate the build folder. It is inconvenience because sometimes I want to check the build folder files. But now I could not found any output file of the project after start. is it possible to make the webpack server generate the distination files when developing? BTW, when using the build command, it could generate the build folder success:
"build": "webpack --mode production --config config/webpack.build.config.js",

Nodejs: How to prepare code for production environment

I'm a beginner developing with Nodejs and React.
Right now, I've got a first version of my web application which works correctly in development environment, but I'm trying to build a version for production environment but I've got this error
ReferenceError: document is not defined
The scripts of my package.json are:
"scripts": {
"dev-webpack": "webpack-dev-server --hot --mode development",
"clean": "rm -rf ./dist",
"dev": "npm run build-dev && cross-env NODE_ENV=development nodemon --exec babel-node src/server/server.js --ignore ./src/client",
"build-dev": "npm run clean && npm run compile-dev",
"compile-dev": "NODE_ENV=development webpack -d --config ./webpack.config.babel.js --progress",
"compile": "NODE_ENV=production webpack -p --config ./webpack.config.babel.js --progress",
"build": "npm run clean && npm run compile",
"start": "npm run build && node ./dist/assets/js/bundle.js"
},
And I try to create the version for production environment with the command npm run start
I have been looking for information about the problem and it seems it's due because I have no Browserify my web application. But, I don't know how to do this correctly nor the steps to follow to do it correctly.
I am seeking a list of the steps required to build a correct version for production environment.
Edit I:
These are the static files generated with "build" script:
The React application is designed to be run in a browser.
When you run dev-webpack you are running an HTTP server and pointing a browser at it.
When you run build you are creating a static JavaScript file. You need to deploy it to a web server (along with the associated HTML document) and then point a browser at the HTML document.
You are currently trying to execute bundle.js with Node and not a browser.
You need to serve your index.html file. You can use serve to host the HTML file.

how build the webpack.config.prod.js?

I use React.js, Windows in my webpage project and want to apply the settings of webpack.config.prod.js to the project.
So I used command below at Webstorm terminal.
set NODE_ENV=production
.\node_modules\.bin\webpack --config webpack.config.prod.js
yarn build
serve -p 3000 -s build
This below is part of package.json
"scripts": {
"start": "cross-env NODE_PATH=src node scripts/start.js",
"build": "node scripts/build.js",
"test": "node scripts/test.js --env=jsdom",
"development": "cross-env NODE_PATH=src node scripts/start.js"
},
Is it correct command to apply the webpack.config.prod.js to my create-react-app? I don't know how to check that the configuration of webpack.config.prod.js has been applied.
I also wonder if I need webpack-dev-server to apply webpack.config.prod.js.
Any help will be thankful. Thanks for reading.
"build": "node scripts/build.js",
instead of this
use
NODE_ENV=production .\node_modules\.bin\webpack --config webpack.config.prod.js
It will build with production config
Now run yarn run build

How to have different .env file for Grunt for staging/production?

How can I have a different .env file in my project when compiling my project with Grunt?
npm install --save cross-env
In your package.json
"scripts": {
"start": "cross-env PROJECT_ENV=production grunt",
"dev": "cross-env PROJECT_ENV=development grunt"
}
In your grunt file you can use process.env.PROJECT_ENV to verify the current environment depending on which script you run.

Categories