Volver al blog

Construye y despliega una app Next.js con Claude, Vercel y Supabase

17 de marzo de 20267 min
Herramientas de desarrollo

Una guía práctica para configurar Terminal, VS Code, GitHub, Claude Code, Vercel y Supabase — desde un blog simple con CMS hasta una app completa de gestión de tablas. Esta guía te lleva por cada herramienta con prompts de IA reales que puedes usar de inmediato.

ToolRoleFree Tier
⌨️
Terminal
Local dev environment — shell, Node.js, Git, package managerAlways free
VS Code
VS Code
Editor + AI integration — extensions, workspace config, inline completionsAlways free
GitHub
GitHub
Source control + CI/CD — branches, PRs, Actions workflowsUnlimited public repos
Claude Code
Claude Code
AI pair programmer — reads your codebase, writes files, runs commandsFree tier available
Supabase
Supabase
DB + Auth + Storage — Postgres, Row Level Security, Realtime2 projects, 500MB DB
Vercel
Vercel
Hosting + CDN — auto-deploy on push, edge functions, preview URLs100GB bandwidth/mo
Cloudflare
Cloudflare
Edge hosting + CDN — Pages for static/SSR, Workers for serverless logicUnlimited requests
Penpot
Penpot
UI design tool — open-source Figma alternative, design-to-codeAlways free
CodeSandbox
CodeSandbox
Cloud dev environment — open any GitHub repo instantly, no local setupFree personal use

✦ Penpot: diseña antes de construir

Antes de escribir una sola línea de código, boceta tu UI en Penpot — la alternativa a Figma open source y basada en navegador que es completamente gratuita. Resolver primero tus layouts y la estructura de componentes ahorra horas de refactorización más adelante.

🔗 ¿Necesitas un punto de partida?

Explora la galería de plantillas de Next.js en vercel.com/templates — filtra por caso de uso (blog, ecommerce, SaaS, portafolio) para encontrar puntos de partida listos para producción. Muchas ya incluyen Supabase, Auth.js o Tailwind preconfigurados.


01 — GitHub: control de versiones y CI/CD

GitHub es donde vive tu código, donde colaboran tus compañeros de equipo, y donde se disparan los despliegues. Configurar tu repositorio correctamente desde el primer día evita dolores de cabeza más adelante.

▶ show code
# Authenticate, create repo, and push
gh auth login
git init && git add . && git commit -m "init"
gh repo create my-blog --public --source=. --push

# Force a redeploy on Vercel without a code change
git commit --allow-empty -m "redeploy"
git push
📌 Nota

Vincula tu repo de GitHub a Vercel y desplegará automáticamente cada push a main, además de crear despliegues de vista previa para cada pull request. El truco de git commit --allow-empty es útil para disparar un despliegue nuevo cuando cambian las variables de entorno pero tu código no.

🦊 GitLab como alternativa

GitLab funciona en todos los lugares donde funciona GitHub — tanto Vercel como Cloudflare Pages se conectan a repositorios de GitLab. Instala la CLI de GitLab y cambia gh por glab:

▶ show code
brew install glab          # macOS
sudo apt install glab -y   # Ubuntu / WSL2

glab auth login
glab repo create my-blog --public
git remote set-url origin https://gitlab.com/yourname/my-blog.git
git push -u origin main

El CI/CD integrado de GitLab (.gitlab-ci.yml) es una fuerte alternativa a GitHub Actions para equipos que ya están en el ecosistema de GitLab.


02 — Terminal y Claude Code

Todo comienza con una buena configuración de terminal. Poner en orden tu shell, Node.js y Git toma unos 10 minutos — y te prepara para todo lo que sigue.

▶ show code
# macOS — Install Homebrew, then essentials
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install node git gh
npm install -g pnpm

# Windows — Install WSL2 (run in PowerShell as Administrator)
wsl --install
# After restart, open Ubuntu and run:
sudo apt update && sudo apt install nodejs npm git -y
npm install -g pnpm gh

# Verify installs
node --version && git --version && gh --version

# Clone an existing repo to a new machine
git clone https://github.com/yourname/my-blog.git
cd my-blog && pnpm install

Claude Code es un agente de IA nativo de terminal que lee todo tu código base, escribe archivos, ejecuta comandos, e itera hasta que la función funciona. Es el multiplicador que hace que un solo desarrollador se sienta como un equipo.

▶ show code
npm install -g @anthropic-ai/claude-code
cd my-blog && claude

✦ VS Code: tu editor

VS Code es más que un editor de texto — con las extensiones y ajustes correctos, se convierte en un IDE que entiende todo tu código base. La clave es configurarlo una vez, bien.

▶ show code
code --install-extension dbaeumer.vscode-eslint
code --install-extension esbenp.prettier-vscode
code --install-extension bradlc.vscode-tailwindcss
code --install-extension anthropics.claude-code
code --install-extension rangav.vscode-thunder-client
code --install-extension eamodio.gitlens

Extensiones esenciales:

  • Hybrid AI — Hugging Face y Claude — ejecuta un agente de Hugging Face auto-alojado para auditorías, documentación, investigación, revisiones, PRs y planes, mientras mantienes a Claude Code reservado para refactors, bugs y migraciones. Incluye prompts de Claude Code para cada área de trabajo y una comparación de costos que muestra cuánto ahorras.
  • Prettier + ESLint — mantiene el código limpio automáticamente. Prettier formatea al guardar, ESLint detecta bugs antes de que lleguen a tus compañeros de equipo.
  • Thunder Client — prueba tus rutas de API sin salir del editor. Una alternativa liviana a Postman integrada directamente.
  • GitLens — entiende el historial de cada línea de un vistazo. Pasa el mouse sobre cualquier línea para ver quién la escribió, cuándo y por qué.

03 — Vercel: despliega en 30 segundos

Vercel es el hogar de Next.js y la forma más rápida de poner tu app en vivo. Conecta tu repo de GitHub una vez, y cada push a main se despliega automáticamente.

▶ show code
npm install -g vercel && vercel
# Or connect GitHub at vercel.com/new — 3 clicks

Después de desplegar, vuelve a Supabase → Authentication → URL Configuration y agrega tu URL de Vercel en vivo a la lista de Redirect URLs.

🔑 Conecta tus claves de Supabase

Después de desplegar, ve a tu proyecto de Vercel → Settings → Environment Variables y agrega NEXT_PUBLIC_SUPABASE_URL y NEXT_PUBLIC_SUPABASE_ANON_KEY para todos los entornos. Luego dispara un redespliegue: git commit --allow-empty -m "add env vars" && git push

💡 La realidad del nivel gratuito

Vercel Hobby: proyectos personales ilimitados, 100GB de ancho de banda/mes. Supabase gratis: 2 proyectos, 500MB de base de datos, 1GB de almacenamiento. Todo este stack es gratuito para proyectos personales.


✦ Cloudflare Pages: la alternativa a Vercel

Cloudflare Pages es una alternativa convincente a Vercel — especialmente si quieres entrega global en el edge, cero cold starts, y sin límites de ancho de banda. Se conecta a GitHub igual que Vercel y despliega automáticamente en cada push a main. La diferencia clave: tu app corre en la red edge de Cloudflare en más de 300 ubicaciones en vez de un puñado de regiones serverless.

▶ show code
# Install the adapter for Next.js on Cloudflare
npm install --save-dev @cloudflare/next-on-pages

# Add the build script to package.json
# "build:cf": "next build && npx vercel-build"

# Deploy via CLI
npx wrangler pages deploy .vercel/output/static
# Or connect GitHub at pages.cloudflare.com — same 3-click flow as Vercel
📌 Next.js en Cloudflare

Cloudflare Pages usa el Edge Runtime — no Node.js. Esto significa que fs, path, y algunas APIs específicas de Node no están disponibles en los route handlers. La mayoría de las apps de Next.js funcionan sin cambios, pero revisa cualquier ruta de API personalizada en busca de imports exclusivos de Node antes de cambiar.

🤖AI Prompt — Configuración de Cloudflare Pages
deploy

Set up my Next.js app to deploy on Cloudflare Pages:

  1. Install and configure @cloudflare/next-on-pages

  2. Create wrangler.toml with:

    • Project name and compatibility date
    • KV namespace bindings for caching
    • Environment variable placeholders
  3. Update package.json scripts for:

    • Local preview with wrangler pages dev
    • Production build for Cloudflare
  4. Create functions/api/contact.ts — a Pages Function that handles contact form POST requests and forwards to Discord webhook or Resend email

  5. .github/workflows/deploy.yml that:

    • Runs on push to main
    • Builds with next-on-pages
    • Deploys to Cloudflare Pages via wrangler

Output all config files ready to commit.

💡 Cloudflare vs Vercel — cuándo elegir cuál

Vercel es el camino de menor resistencia para Next.js — cero configuración, URLs de vista previa instantáneas, y soporte nativo de ISR. Cloudflare Pages gana en precio (sin cargos por ancho de banda, sin límites de invocación de funciones) y es la mejor opción si ya estás usando Cloudflare para DNS, Workers, o almacenamiento R2. Ambos tienen niveles gratuitos generosos para proyectos personales.


04 — Supabase: tu backend en una caja

Supabase te da Postgres, autenticación, almacenamiento de archivos, y suscripciones en tiempo real — todo con tipos de TypeScript autogenerados y un nivel gratuito generoso.

▶ show code
brew install supabase/tap/supabase
pnpm add @supabase/supabase-js @supabase/ssr
supabase gen types typescript --project-id YOUR_ID > types/database.ts

Checklist de configuración de Auth:

  • La autenticación por email está activada — confírmalo en Providers → Email.
  • El Site URL está configurado — ve a Authentication → URL Configuration y establece tu dominio de producción.
  • Las Redirect URLs están configuradas — agrega tanto http://localhost:3000/** como tu URL de Vercel a la lista de Redirect URLs. Sin esto, los magic links quedarán bloqueados.
  • Las claves de API están en Vercel — copia NEXT_PUBLIC_SUPABASE_URL y NEXT_PUBLIC_SUPABASE_ANON_KEY desde Project Settings → API, y luego agrégalas a las Environment Variables de Vercel.
⚠️ Error común

Si los magic links o los inicios de sesión OAuth redirigen a una página de error, casi siempre es por una redirect URL faltante. Asegúrate de que tanto http://localhost:3000/** como tu dominio de Vercel en vivo estén en la lista de Redirect URLs — el sufijo comodín /** es obligatorio.


✦ CodeSandbox: código desde cualquier lugar

CodeSandbox te permite abrir cualquier repo de GitHub en un entorno de desarrollo en la nube completo — sin necesidad de configuración local. Perfecto para ediciones rápidas sobre la marcha, incorporar colaboradores, o probar una rama en una máquina que no tiene tu entorno de desarrollo.

Solo antepón codesandbox.io/p/github/ a cualquier URL de GitHub y tu repo se abre en un editor similar a VS Code con un servidor de desarrollo en ejecución, acceso a terminal, e integración de vista previa de Vercel incluida.

▶ show code
# Open any GitHub repo in CodeSandbox instantly:
# https://codesandbox.io/p/github/yourname/my-blog

# Or install the browser extension to add an
# "Open in CodeSandbox" button on every GitHub repo page

# Devboxes persist your environment — install deps once,
# resume your session later exactly where you left off
💡 Mejores casos de uso

Usa CodeSandbox cuando estés lejos de tu máquina principal, revisando un PR en una tablet, o quieras prototipar un componente sin ensuciar tu rama local. Tus variables de .env.local se pueden guardar como secretos encriptados en CodeSandbox para que tu conexión de Supabase también funcione sin problemas en la nube.

🤖AI Prompt — Configuración de Devbox de CodeSandbox
cloud dev

Create a .codesandbox/tasks.json configuration for my Next.js project so it starts correctly every time I open it in CodeSandbox:

Requirements:

  • Auto-run pnpm install on first open
  • Start the Next.js dev server on port 3000
  • Show the preview in the right panel automatically
  • Set Node.js version to 20 LTS

Also show me:

  • How to add Supabase env vars as CodeSandbox secrets
  • How to share a live preview URL with a teammate
  • The .devcontainer/devcontainer.json equivalent for opening the same environment in GitHub Codespaces

Output all config files ready to commit.



Si estás buscando una app ya hecha construida exactamente sobre este stack, Open Technology App es una plataforma de cola de tareas y gestión de flujos de trabajo auto-alojada en Vercel y Supabase — gratis para empezar.

Ponte en contacto

¿Te interesa un tema? Déjame una nota y elige una categoría. También estoy disponible para una reunión de consultoría gratuita: escríbeme y lo organizamos.