Publicar tu web, GitHub Pages, Netlify y Vercel
Una web que solo está en tu ordenador no la ve nadie.
Conecta GitHub con un servicio de despliegue y cada push publica la web.
GitHub Pages para lo sencillo; Netlify y Vercel añaden vistas previas por rama y soporte de npm.
Configura bien el comando de build y la carpeta de salida.
El registro del despliegue explica cualquier fallo.
- Una web que solo está en tu ordenador no la ve nadie. Ya sabes qué son el hosting y los dominios (lección Cómo funciona la web (y quién hace qué)); ahora vas a publicar tu portfolio gratis y de forma profesional: conectando tu repositorio de GitHub a un servicio que publica la web automáticamente cada vez que haces push. Es lo que se llama despliegue continuo.
- Tu ordenador ──commit + push──▶ GitHub ──aviso──▶ Netlify / Vercel ──▶ https://tu-web.netlify.app
- Tu proyecto en un repositorio de GitHub (lección Git, el historial de tu proyecto), con el index.html en la raíz o en una carpeta conocida. Nombres de ficheros en minúsculas y sin espacios, y rutas relativas (css/estilos.css, no C:\Users\…). En el servidor, Foto.JPG y foto.jpg son ficheros distintos.
- La más directa: en el repositorio, Settings → Pages → Deploy from a branch → main / (root). En un minuto tu web está en https://tu-usuario.github.io/nombre-repo/. Ideal para webs de HTML, CSS y JS sin herramientas.
- Entra en netlify.com y regístrate con tu cuenta de GitHub. Add new site → Import an existing project → GitHub y elige el repositorio. Configuración:Web de HTML y CSS sin herramientas: deja Build command vacío y Publish directory en la carpeta donde está el index.html (normalmente la raíz, .). Con npm (por ejemplo, Tailwind): Build command npm run build y el directorio que genera ese script. Deploy. Te da una dirección tipo https://nombre-aleatorio.netlify.app, que puedes cambiar en Site configuration → Change site name.
Introducción
Una web que solo está en tu ordenador no la ve nadie. Ya sabes qué son el hosting y los dominios (lección Cómo funciona la web (y quién hace qué)); ahora vas a publicar tu portfolio gratis y de forma profesional: conectando tu repositorio de GitHub a un servicio que publica la web automáticamente cada vez que haces push. Es lo que se llama despliegue continuo.
Tu ordenador ──commit + push──▶ GitHub ──aviso──▶ Netlify / Vercel ──▶ https://tu-web.netlify.app
Qué necesitas antes
Tu proyecto en un repositorio de GitHub (lección Git, el historial de tu proyecto), con el index.html en la raíz o en una carpeta conocida. Nombres de ficheros en minúsculas y sin espacios, y rutas relativas (css/estilos.css, no C:\Users\…). En el servidor, Foto.JPG y foto.jpg son ficheros distintos.
Opción 1: GitHub Pages
La más directa: en el repositorio, Settings → Pages → Deploy from a branch → main / (root). En un minuto tu web está en https://tu-usuario.github.io/nombre-repo/. Ideal para webs de HTML, CSS y JS sin herramientas.
Opción 2: Netlify
Entra en netlify.com y regístrate con tu cuenta de GitHub. Add new site → Import an existing project → GitHub y elige el repositorio. Configuración:Web de HTML y CSS sin herramientas: deja Build command vacío y Publish directory en la carpeta donde está el index.html (normalmente la raíz, .). Con npm (por ejemplo, Tailwind): Build command npm run build y el directorio que genera ese script. Deploy. Te da una dirección tipo https://nombre-aleatorio.netlify.app, que puedes cambiar en Site configuration → Change site name.
Extra muy útil: Netlify recoge formularios sin programar un servidor. Añade el atributo data-netlify="true" a tu <form> y los mensajes aparecerán en su panel.
Opción 3: Vercel
Entra en vercel.com y regístrate con GitHub. Add New → Project → Import el repositorio. Framework Preset: Other si es HTML y CSS; Vercel detecta solo si usas Vite, Astro, Next… Con npm, comprueba el Build Command (npm run build) y el Output Directory. Deploy. Dirección tipo https://nombre-repo.vercel.app.
El flujo de trabajo a partir de ahora
Cambias algo en VS Code y lo pruebas en local. Commit con un mensaje claro y push (GitHub Desktop). En uno o dos minutos, la web publicada se actualiza sola. Si algo falla, el panel de Netlify o Vercel muestra el registro del despliegue (deploy log) con el error, y puedes volver a una versión anterior con un clic.
Si trabajas en una rama distinta de main, ambos servicios crean una vista previa con su propia dirección: perfecta para enseñar un cambio a un cliente (o al profesor) antes de publicarlo.
Tu propio dominio
Los tres permiten usar un dominio propio (tunombre.com): lo compras en un registrador y en su panel apuntas los DNS a Netlify, Vercel o GitHub siguiendo las instrucciones que te dan. El certificado HTTPS lo ponen gratis. (Repasa dominios y DNS en la lección Cómo funciona la web (y quién hace qué).)
¿Cuál elijo?
GitHub PagesNetlifyVercel Mejor paraHTML, CSS y JS sin herramientasWebs estáticas y con npm; formulariosProyectos con frameworks (Next, Astro…) Vistas previas por ramaNoSíSí Formularios sin servidorNoSíNo Plan gratuitoSíSí (con límites de uso)Sí, para uso personal (con límites)
Revisa siempre las condiciones del plan gratuito: cambian con el tiempo.
⚠️ Atención. Todo lo que subes a un repositorio público y a una web publicada lo puede ver cualquiera. No subas contraseñas, datos personales de otras personas ni fotos de terceros sin permiso.
Practica
Publica tu portfolio en Netlify o Vercel conectado a tu repositorio de GitHub. Cambia el nombre del sitio por uno reconocible (nombre-apellido-portfolio). Haz un cambio visible, commit y push, y comprueba que se actualiza solo. Pega la dirección publicada en el README.md del repositorio.
Errores frecuentes
404 en la portada: el index.html no está donde dice el Publish/Output directory, o se llama Index.html. Sin estilos ni imágenes publicados, pero sí en local: rutas con mayúsculas distintas o absolutas a tu disco. Con npm, olvidar el build command: se publica el input.css sin procesar. Subir node_modules/: no hace falta; el servicio ejecuta npm install por su cuenta.