logo CS

Como criar seu primeiro servidor com Node.js e Express

Criar um servidor backend pode parecer muito complexo no início, mas com o Node.js e o Express esse processo se torna algo muito mais simples. No nosso primeiro tutorial da Clean Stack, vou lhe ensinar, caro leitor, a como criar seu primeiro servidor passo a passo, e tentarei te explicar da forma mais simples o que está acontecendo em cada processo.

autor

Guilherme Braga

Publicado 28 de janeiro de 2026 às 22:32

  • #Node.js
  • #Desenvolvimento Web
  • #Express.js
4 min
Como criar seu primeiro servidor com Node.js e Express

O que é Node.js?

De forma simplificada, o Node.js nada mais é que um ambiente que permite executar o JavaScript fora do navegador.

Com ele, podemos criar servidores, APIs e diversas aplicações backend usando a mesma linguagem que usamos no frontend. Em breve eu escreverei um artigo explicando de uma forma mais aprofundada.

Então, entendemos que com o Node.js, o JavaScript deixa de ser apenas 'linguagem de navegador', ou melhor, deixa de pegar div por id e inserir um parágrafo na tela.

O que é Express?

O Express é um framework para Node.js que facilita a criação de servidores web. É uma das ferramentas mais utilizadas do segmento no mercado.

Ele abstrai muitas configurações complexas e verbosas e nos permite criar rotas e respostas de forma simples e organizada.

Pense no Express como um atalho para criar servidores com menos código e mais fácil de entender.

Pré-requisitos

Antes de começar a desenvolver nosso projeto, é necessário que você tenha:

  • Node.js instalado na máquina, eu estou usando a versão 22.17.0
  • Conhecimento básico de JavaScript
  • Um editor de código (como o VS Code)

Criando o projeto

Com os pré-requisitos cumpridos, vamos para o código. Vamos começar criando a pasta do nosso projeto. Eu recomendo que vocês criem uma pasta nos seus documentos chamada 'meu-servidor-node'.

Após criarem a pasta, acessem ela e, no caminho da pasta, escreva cmd e tecle enter. Com isso você abrirá a pasta no terminal. Veja a imagem abaixo:

explorador de arquivos

Vamos iniciar o projeto em Node e abriremos o projeto no VSCode com os seguintes comandos:

1npm init -y
2code .

Imagem Terminal

Como podemos perceber, o primeiro comando criou o arquivo package.json, um arquivo crucial para projetos em node. Nele, é onde fazemos algumas configurações, guardamos informações do projeto e das suas dependências. Neste momento, vamos só modificar o type dele, troque o "commonjs" por "module". Deve ficar assim:

1{
2  "name": "meu-servidor-node",
3  "version": "1.0.0",
4  "description": "",
5  "main": "index.js",
6  "scripts": {
7    "test": "echo \"Error: no test specified\" && exit 1"
8  },
9  "keywords": [],
10  "author": "",
11  "license": "ISC",
12  "type": "module",
13  "dependencies": {
14    
15  }
16}

Não se preocupe com ele, neste início, com o tempo você vai se familiarizando e entendendo mais sobre.

Instalando o Express

Agora, vamos deixar de usar o terminal do windows e começaremos a usar o terminal integrado do próprio VSCode.

Abra o terminal integrado do VSCode, clicando com o botão direito e selecionando a opção para abrir no terminal integrado. Agora, rode o comando npm install express. Como a imagem abaixo:

Terminal integrado

Após a instalação, se você conferir o package.json verá o nome dele lá.

Criando o servidor

Vamos criar um arquivo chamado index.js na pasta do arquivo. E escreveremos o seguinte código:

index.js
1const app = express() // Cria a instância do aplicativo Express
2const PORT = 9090 // Define a porta lógica onde o servidor será executado
3
4// Inicia o servidor para ouvir requisições na porta definida
5app.listen(PORT, () => {
6    // Callback executada quando o servidor inicia com sucesso
7    console.log(`Servidor rodando na porta ${PORT}`)
8})

O que está acontecendo aqui?

  • Importamos o Express
  • Criamos a aplicação (app)
  • Definimos a porta onde o servidor vai rodar
  • Iniciamos o servidor com listen

Ao executar esse arquivo, o servidor já estará ativo, mas ainda não responde nada.

Criando sua primeira rota

Publicidade

A rota define como o servidor deve responder a uma requisição. Se quiser entender um pouco mais sobre requisição, sugiro que leia o nosso artigo sobre HTTP, status codes e requisições na prática

Agora, adicione o código abaixo antes do app.listen:

index.js
1app.get('/', (req, res) => {
2
3    res.status(200)
4        .json({
5            message: 'Hello World! Meu primeiro servidor em Node.js criado!',
6            status: 'Ok'
7        })
8})

Aqui:

  • app.get define uma rota do tipo GET
  • '/' é o caminho acessado no navegador
  • res.status envia o status daquela resposta enviada ao cliente
  • .json({message: '...'}) envia um json para o cliente

Executando o servidor

No terminal, execute:

1node index.js

terminal

Abra o navegador e acesse:

1http://localhost:9090

Você verá a mensagem retornada pelo servidor.

Resposta do servidor

Parabéns, você acabou de criar seu primeiro servidor backend.

O que acontece quando você acessa o navegador?

1 - O navegador faz uma requisição HTTP para nosso servidor

2 - O Express recebe essa requisição

3 - A rota correspondente é executada

4- O servidor envia uma resposta para o cliente (navegador)

5 - O navegador exibe o resultado

Esse é o fluxo básico de uma aplicação backend.

Próximos passos

Agora que você criou seu primeiro servidor, eu recomendo que você procure aprender alguns tópicos, vou listá-los para vocês visualizarem melhor:

  • Aprenderem a criar múltiplas rotas

  • Entender o protocolo HTTP, leia nosso artigo

  • Organizar o projeto em pastas e padrões de organizações como o MVC

  • Usar express.Router

  • Criar uma API REST

  • Conectar com um banco de dados, eu recomendo o MongoDB pela simplicidade.

Publicidade

Conclusão

Apesar de parecer difícil criar um servidor, quando usamos o Node.js e o Express vemos que é muito mais simples do que parece. Com poucos comandos e algumas linhas de código, você já consegue ter ideia de como funciona o backend de uma aplicação web.

Para mim, o mais importante é você focar nos fundamentos, não tente aprender tudo de uma vez. Eu comecei assim, criei meu primeiro servidor, criei outro, queria ver um site, e criei outro usando handlebars, procurei alternativas melhores e só fui evoluindo. Corram atrás.

Se vocês tiverem qualquer dúvida que eu consiga ajudar ou queiram sugerir algo, comente aqui embaixo. Reajam com o emoji de olhos, para eu saber que alguém leu até o fim.