Express: conceptos básicos y cómo iniciar tu primer proyecto con Node.js

Aprende qué es Express y cómo crear tu primer servidor con Node.js. Conceptos básicos, rutas, middlewares y buenas prácticas para iniciar en el backend paso a paso.

Express: conceptos básicos y cómo iniciar tu primer proyecto con Node.js

Written By

Jenner Acosta

Published on

Sep 15, 2025

Cuando empiezas en el mundo del backend con Node.js, uno de los primeros nombres que escucharás es Express.
Es un framework minimalista que nos permite crear servidores de forma sencilla, aprender los fundamentos de HTTP y sentar bases sólidas para proyectos futuros.

🧩 Conceptos básicos de Express

Antes de programar, veamos las piezas clave que forman una app en Express.

🔌 Servidor HTTP

Un servidor HTTP es un programa que escucha peticiones en un puerto y devuelve respuestas.
Con Node puedes hacerlo con el módulo http, pero Express lo simplifica al máximo.

📩 Request (solicitud) y Response (respuesta)

Ejemplo:

app.get('/saludo', (req, res) => {
    res.json({ message: 'Hola, este es un response en JSON' });
});

🔀 Rutas (routes)

Las rutas definen qué acción realiza el servidor cuando recibe una petición. Combinan método HTTP + endpoint.

app.get('/users', (req, res) => {
    res.json({ users: [] });
});

app.post('/users', (req, res) => {
    res.status(201).json({ message: 'Usuario creado' });
});

⚙️ Middlewares

Funciones que se ejecutan entre la petición y la respuesta. Sirven para parsear datos, validar, autenticar o manejar errores.

function logger(req, res, next) {
    console.log(`${req.method} ${req.url}`);
    next();
}

app.use(logger);

🌐 Métodos HTTP

app.delete('/posts/:id', (req, res) => {
    res.json({ message: `Post con id ${req.params.id} eliminado` });
});

📝 JSON

Formato estándar para enviar/recibir datos en apps modernas.

app.get('/post', (req, res) => {
    res.json({ id: 1, title: 'Hola Mundo' });
});

🔒 Variables de entorno

Usadas para configurar el proyecto sin exponer datos sensibles.

Archivo .env:

PORT = 4000;
DB_PASSWORD = supersecreto;

Código:

require('dotenv').config();
const port = process.env.PORT || 3000;

🚨 Manejo de errores

Un buen backend siempre responde ante fallos.

app.use((err, req, res, next) => {
    console.error(err.stack);
    res.status(500).json({ error: 'Algo salió mal' });
});

🛠️ Crear tu primer proyecto con Express

  1. Instalar Node.js y verificar con node -v y npm -v.

  2. Inicializar proyecto:

mkdir mi-primer-express
cd mi-primer-express
npm init -y
  1. Instalar Express:
npm install express
  1. Crear archivo principal index.js:
const express = require('express');
const app = express();
const port = process.env.PORT || 3000;

app.get('/', (req, res) => {
    res.send('Hola desde Express!');
});

app.listen(port, () => {
    console.log(`Servidor corriendo en http://localhost:${port}`);
});
  1. Ejecutar servidor:
node index.js

Visita http://localhost:3000 y deberías ver Hola desde Express!

📚 Buenas prácticas iniciales

✅ Conclusión

Express es la forma ideal de iniciarte en el backend con Node.js: es ligero, sencillo y te enseña los fundamentos de cómo funciona un servidor web.

Una vez domines Express, tendrás el camino abierto para frameworks más estructurados como NestJS o AdonisJS.