Criando um servidor local com auto refresh usando NodeJS
Muito provalvemente você, enquanto estava alterando seu código HTML, CSS ou Javascript, fica atualizando a págia toda vez que mexe no código, já pensou em fazer isso de forma automática? Se sim, siga os passos que terá sucesso.
Requisitos
- NodeJS
- NPM ou Yarn
- Linux (o que estou usando)
Configurando passo-a-passo
Isso é simples:
mkdir tabnews-content
Em seguida, entre na pasta:
cd tabnews-content
Inicialize o projeto com NPM ou Yarn:
yarn init -y
ou npm init -y
Em seguida, instale o live-server
:
yarn add live-server
ou npm install live-server
Necessitamos criar uma pasta para a raiz do site, e o script server.js
:
mkdir public
touch server.js
touch public/index.html
Noserver.js
, escreva ou cole o seguinte código:
let liveServer = require("live-server");
let params = {
port: 8181,
host: /* IP da sua máquina aqui */,
root: "./public",
open: false,
ignore: 'scss,my/templates',
file: "index.html",
wait: 1000,
mount: [['./components', './node_modules']],
logLevel: 2,
middleware: [function(req, res, next) { next(); }]
};
liveServer.start(params);
E simplismente digitar:
node server.js
Você pode adicionar esse comando, na áreascripts
do package.json
:
{
"name": "tabnews-content",
"version": "1.0.0",
"main": "server.js",
"license": "MIT",
"dependencies": {
"live-server": "^1.2.2"
},
"scripts": {
"start": "node server.js"
}
}
Assim você pode usar:
yarn start
ou npm run start
Deve aparecer, no terminal, algo assim:
> tabnews-content@1.0.0 start
> node server.js
Mapping ./components to "/home/user/Documents/project/tabnews-content/node_modules"
Serving "./public" at http://192.168.0.100:8181
Ready for changes
Considerações finais
O bom disso é que você pode acessar o site de qualquer dispositívo conectado em sua rede, assim você pode até entrar pelo seu celular digitando o IP e a porta de onde está rodando o servidor, e tudo atualizando automático em cada alteração.