Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/midudev/jscamp/llms.txt

Use this file to discover all available pages before exploring further.

Esta página responde las dudas más habituales sobre JSCamp, el bootcamp intensivo de JavaScript full-stack de midudev. Si no encuentras la respuesta aquí, consulta las opciones de soporte al final de la página.
No es necesaria experiencia previa en JavaScript. El bootcamp comienza desde HTML y CSS básico (módulo 00) y avanza progresivamente hasta tecnologías avanzadas como Docker, TypeScript e Inteligencia Artificial.Sí es recomendable:
  • Saber usar la computadora con comodidad (instalar software, usar la terminal básica).
  • Tener nociones básicas de lógica o programación (aunque no es estrictamente obligatorio).
  • Disponer de tiempo para practicar los ejercicios de cada módulo.
El ritmo está diseñado para que cualquier persona con ganas de aprender pueda seguirlo.
Sí, hay un certificado opcional de pago disponible en jscamp.dev. Es una opción limitada que incluye los siguientes beneficios:
  • 🎓 Certificado Digital — certifica tus logros al completar el bootcamp.
  • 📝 Seguimiento de Ejercicios — revisión y corrección de tus ejercicios por el equipo.
  • 💬 Canal Exclusivo en Discord — comunidad premium con soporte directo.
  • 🎥 Directos Exclusivos — clases de repaso en vivo con ronda de preguntas y respuestas.
  • 📄 Revisión de CV — expertos revisan tu currículum y te dan feedback personalizado.
  • 🏢 Workshop Presencial — entrada asegurada a los workshops en Barcelona y Madrid.
Para obtener el certificado, entra en https://jscamp.dev, inicia sesión y consulta las opciones disponibles.
Todos los videos están disponibles en jscamp.dev. El registro es completamente gratuito.Ten en cuenta que:
  • Los materiales se publican progresivamente a medida que avanza el bootcamp en directo.
  • El código fuente de todos los módulos está disponible en GitHub desde el inicio.
  • Puedes revisar los videos en cualquier momento y a tu propio ritmo una vez publicados.
Si un módulo todavía no tiene video publicado, el código del repositorio puede servirte como referencia mientras tanto.
Se requiere Node.js 20 o superior. Puedes verificar tu versión actual ejecutando:
node --version
Instalación recomendada con nvm (Node Version Manager), que permite gestionar múltiples versiones:
# Instalar nvm (macOS/Linux)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.0/install.sh | bash

# Instalar la versión LTS más reciente
nvm install --lts

# Usar una versión específica
nvm use 22

# Ver versiones instaladas
nvm ls
Para Windows, se recomienda usar nvm-windows o instalar Node.js directamente desde nodejs.org.
La mayoría de módulos usan npm estándar, que es el gestor de paquetes predeterminado de Node.js y el más sencillo para empezar.Los módulos 08-sql y 09-ci-cd usan pnpm workspaces porque son monorepos que contienen múltiples sub-paquetes (por ejemplo, frontend y backend en el mismo repositorio). pnpm gestiona eficientemente las dependencias compartidas entre paquetes y evita duplicaciones.
# Instalar pnpm globalmente
npm install -g pnpm

# Instalar dependencias en un monorepo
pnpm install

# Ejecutar un script en un paquete concreto
pnpm --filter backend dev
No necesitas aprender pnpm para los primeros módulos. Cuando llegues al módulo 08, el README del módulo explica los comandos necesarios.
Este error aparece cuando intentas iniciar un servidor en un puerto que ya está siendo utilizado por otro proceso.
Error: listen EADDRINUSE: address already in use :::3000
Soluciones:Opción 1 — Cambiar el puerto en el archivo .env:
# En 04-express/.env (o el módulo correspondiente)
PORT=3001
Opción 2 — Cambiar el puerto de Vite (frontend):
npm run dev -- --port 3001
Opción 3 — Encontrar y matar el proceso que usa el puerto:
# macOS / Linux: encontrar el proceso
lsof -i :3000

# Matar el proceso por PID
kill -9 <PID>

# Windows (PowerShell)
netstat -ano | findstr :3000
taskkill /PID <PID> /F
Opción 4 — Matar todos los procesos Node.js:
# macOS / Linux
pkill -f node

# Windows
taskkill /IM node.exe /F
El módulo de Inteligencia Artificial requiere una clave de API de OpenAI para conectarse a los modelos de lenguaje (GPT-4, etc.).
1

Crear una cuenta en OpenAI

Ve a platform.openai.com y regístrate o inicia sesión.
2

Generar una API Key

En el panel, navega a API Keys y haz clic en “Create new secret key”. Copia la clave inmediatamente — solo se muestra una vez.
3

Añadir la clave al proyecto

Crea o edita el archivo .env en la carpeta del módulo:
# 07-inteligencia-artificial/backend/.env
OPENAI_API_KEY=sk-proj-xxxxxxxxxxxxxxxxxxxx
4

Verificar que funciona

Inicia el servidor del módulo y comprueba que no hay errores de autenticación en la consola.
Nunca subas tu OPENAI_API_KEY a Git. Verifica que .env está en tu .gitignore. OpenAI puede revocar claves expuestas públicamente de forma automática.
Alternativa gratuita: el módulo 10 de Docker incluye un ejemplo con docker model que ejecuta modelos de IA completamente en local y sin necesidad de API key, usando ai/smollm2 (~256 MB).
Se recomienda seguir el orden numérico ya que JSCamp está diseñado como un itinerario progresivo: cada módulo construye sobre los conocimientos y el código del anterior.La aplicación DevJobs evoluciona a lo largo de todos los módulos:
  • 00-01: HTML, CSS y JavaScript básico
  • 02-03: React + estado global + routing
  • 04: API REST con Express y Node.js
  • 05: Testing
  • 06: TypeScript
  • 07: Integración de IA (OpenAI)
  • 08: SQL y bases de datos
  • 09: CI/CD con GitHub Actions
  • 10: Dockerización de la app
Sin embargo, si ya tienes experiencia en algún área concreta, puedes saltar directamente a módulos más avanzados. El código de cada módulo es autocontenido y tiene su propio README con instrucciones de inicio.
Depende de si tienes el certificado o no:Con certificado (de pago):
  • Acceso al canal exclusivo de Discord con soporte directo del equipo de midudev.
  • Directos exclusivos de repaso donde puedes hacer preguntas en tiempo real.
Sin certificado (gratuito):
  • Comunidad general de midudev en Twitch (twitch.tv/midudev) — preguntas en el chat durante los directos.
  • Canal de YouTube (youtube.com/@midudev) — comentarios en los videos.
  • Issues en GitHub del repositorio del bootcamp para reportar errores en el código de los módulos.
Antes de pedir ayuda, busca el error en Google incluyendo el mensaje exacto entre comillas. La mayoría de errores comunes de Express, Node.js o Docker tienen solución documentada en Stack Overflow o en la documentación oficial.
Lista completa de herramientas necesarias para seguir el bootcamp:
HerramientaVersión mínimaMódulosEnlace
Node.js20+Todosnodejs.org
GitCualquieraTodosgit-scm.com
Visual Studio CodeCualquieraTodoscode.visualstudio.com
Docker DesktopReciente10docker.com
pnpm8+08, 09npm install -g pnpm
Extensiones de VS Code recomendadas:
  • Live Preview — para el módulo de HTML/CSS
  • ESLint — linting de JavaScript/TypeScript
  • Prettier — formateo automático de código
  • Docker — soporte para Dockerfile y Compose
  • TypeScript Hero — autocompletado avanzado de TS
A partir del módulo 04, el proyecto tiene dos partes que deben ejecutarse simultáneamente en terminales separadas:
# Terminal 1 — Backend (Express)
cd 04-express
npm install
npm run dev
# → API escuchando en http://localhost:3000

# Terminal 2 — Frontend (Vite + React)
cd 03-estado-global-react-router   # o el módulo frontend correspondiente
npm install
npm run dev
# → App disponible en http://localhost:5173
Con Docker Compose (módulo 10), puedes levantar todo con un solo comando:
docker compose up --build

¿Encontraste un error en el código de algún módulo? Puedes reportarlo directamente en el repositorio oficial de GitHub: github.com/midudev/jscamp. Abre un issue describiendo el problema, el módulo afectado y los pasos para reproducirlo.

Build docs developers (and LLMs) love