← Back to course

Frontend con AI (React / Next.js)

🧠 Lección: Frontend con Next.js (Arquitectura y Desarrollo)

🎯 Objetivo

Aprender a construir interfaces modernas, rápidas y escalables usando Next.js, integrando buenas prácticas y preparándolo para productos AI-native.


🚀 1. ¿Qué es Next.js?

Next.js es un framework basado en React que permite crear aplicaciones web con:

  • ⚡ Alto rendimiento

  • 🌐 SEO optimizado

  • 🧱 Arquitectura moderna

  • 🔄 Rendering híbrido (SSR, SSG, CSR)

👉 Es el estándar actual para apps web modernas


🧩 2. Estructura básica del proyecto

En Next.js (App Router):

app/
  layout.tsx
  page.tsx
  dashboard/
    page.tsx
components/
lib/
services/

📌 Conceptos clave:

  • app/ → rutas y páginas

  • components/ → UI reutilizable

  • services/ → llamadas a API

  • lib/ → utilidades


⚙️ 3. Flujo de una aplicación

User → UI (Next.js) → API (NestJS) → Response → UI update

👉 Next.js consume el backend y renderiza la interfaz


💻 4. Componentes clave

🧱 Componentes (UI)

export default function Button() {
  return <button className="bg-blue-500 text-white">Click</button>;
}

🌐 Página (Route)

export default function Button() {
  return <button className="bg-blue-500 text-white">Click</button>;
}

🔗 Fetch a API

const data = await fetch('/api/tasks').then(res => res.json());

⚡ 5. Tipos de Rendering

🧠 SSR (Server-Side Rendering)

  • Render en servidor

  • Mejor SEO


⚡ CSR (Client-Side Rendering)

  • Render en navegador

  • Más dinámico


📦 SSG (Static)

  • Generado en build

  • Súper rápido


👉 Regla:

Usa SSR para datos dinámicos, SSG para contenido estático


🎨 6. UI y Styling

  • Tailwind CSS (recomendado)

  • Componentes reutilizables

  • Diseño limpio y consistente


🧠 7. Manejo de estado

Opciones:

  • useState / useEffect

  • Context API

  • Zustand / Redux (avanzado)


🔐 8. Autenticación

  • JWT (desde backend)

  • Middleware para proteger rutas

  • Manejo de sesiones


🤖 9. Next.js + AI (tu diferencial)

Puedes integrar AI directamente en la UI:

User input → Next.js → AI API → Response → UI

👉 Ejemplos:

  • Chat interfaces

  • Generación de contenido

  • Asistentes inteligentes


🧩 10. Buenas prácticas

✅ Haz esto:

  • Componentes pequeños

  • Separar lógica (services)

  • Usar loading states

  • Manejar errores


❌ Evita esto:

  • Lógica pesada en UI

  • Componentes gigantes

  • Fetch sin control

  • No manejar estados


🧪 11. Testing (Frontend)

  • React Testing Library

  • Playwright / Cypress (E2E)

👉 Testing también en frontend


🧠 12. Ejemplo en tu proyecto

AIDevAcademy frontend:

app/
  courses/
  lessons/
  dashboard/
components/
  VideoPlayer/
  Sidebar/
services/
  api.ts

🧠 13. Checklist antes de construir

  • ¿Qué páginas necesito?

  • ¿Qué componentes reutilizo?

  • ¿Cómo consumo el backend?

  • ¿Dónde entra AI?

  • ¿Cómo manejo estado?


🔁 14. Flujo completo con backend

Next.js (UI)
   ↓
NestJS (API)
   ↓
Database / AI
   ↓
Response → UI

🏁 Conclusión

Next.js no es solo frontend… es la capa que conecta la experiencia del usuario con todo el sistema.


🔥 Frase clave

“Una buena UI no solo se ve bien… responde rápido y escala.”