Elegir entre Single Page Application y Server Side Rendering define el rendimiento, la experiencia del usuario y el SEO de tus proyectos en React. Aquí verás cómo decidir con claridad y, además, configurar el enrutamiento con React Router DOM y Vite para iniciar rápido con TypeScript y buenas prácticas.
¿Qué diferencias hay entre single page application y server side rendering?
Las dos aproximaciones cambian cómo se sirve el HTML y cómo el usuario percibe la carga e interacción. Entenderlas permite tomar decisiones informadas al crear aplicaciones con React.
Single Page Application: carga todo el HTML inicialmente. Puede haber un pequeño retraso al empezar, pero ofrece navegación muy fluida entre vistas porque ya está todo cargado.
Server Side Rendering: sirve el HTML desde el servidor por cada página. La primera carga es más rápida. Cada cambio de vista vuelve a cargar contenido. Mejora el SEO porque los motores de búsqueda pueden leer el HTML inicial.
Elección: para SSR puedes usar Next.js con rutas incluidas. Para SPA, trabajar con React Router DOM es directo y flexible.
¿Cómo iniciar un proyecto con Vite y React Router DOM?
El flujo es simple: crear el proyecto con Vite, elegir React con TypeScript, instalar dependencias, correr en localhost e instalar react-router-dom. Luego, abrir en Visual Studio Code y verificar en package.json.
¿Qué comandos usar con npm y vite?
npm create vite@latest nombre-de-tu-app
# Selecciona React y TypeScript.npminstallnpm run dev
npminstall react-router-dom
Abre la URL de localhost que muestra la consola.
Confirma que la aplicación corre.
¿Cómo instalar y verificar react-router-dom en package.json?
Abre package.json y verifica que react-router-dom esté en dependencies.
Si quieres fijar versión, quita el “gorrito” ^ delante de la versión.
Con esto, reinstalará siempre la misma versión al volver a instalar el proyecto.
¿Cómo configurar rutas básicas con BrowserRouter, Routes, Route y Link?
Primero, limpia App.tsx (remueve estilos y contenido por defecto). Luego, configura el enrutador en main con BrowserRouter y define rutas y navegación con Routes, Route y Link. Usa componentes simples: Home y About.
muy buena explicación, eres una gran profe. Me encantan tus clases.
Ay Juan !!! Gracias por tu comentario... me alegra muchísimo 🩵
Server-Side Rendering (SSR) es ideal cuando se busca una carga inicial rápida y mejor SEO, ya que el HTML se pre-renderiza en el servidor. Es útil para aplicaciones donde la optimización de motores de búsqueda es crucial. Por otro lado, una Single Page Application (SPA) ofrece una experiencia más fluida al cargar todo el HTML de inmediato, permitiendo una navegación rápida entre vistas. Se recomienda usar SPAs para aplicaciones interactivas, donde el rendimiento en la navegación es fundamental. Ambas tienen sus ventajas, eligiendo según las necesidades del proyecto.
:clap: :clap: :clap:
Esperando algo de SSR, y solo un comentario?,
entiendo que esto es mas de una clase,
claro bro, dijeron que si querias hacer algo ssr podias usar nextjs. Sera un curso o mas completos.
Ya salió la nueva versión de React Router, la versión 7, que se fusionó con Remix.
En una SPA (Single Page Application), todo se renderiza en el navegador. El usuario interactúa con una sola página que cambia dinámicamente sin recargar. Ejemplo: un contador en React donde el contenido se actualiza con useState. Ideal para aplicaciones rápidas, pero no tan buenas para SEO.
En cambio, con SSR (Server Side Rendering), como en Next.js, el servidor genera el HTML antes de enviarlo al cliente. Esto mejora la velocidad de carga y el posicionamiento en buscadores, ya que el contenido llega listo para mostrarse. Ideal para webs públicas o de contenido dinámico.
Asi quedaron mis rutas con sus estilos estoy usando tailwinds
Esto no era lo que se hacia con PHP? porque darle estos atributos a js? no lo hace mas lento?
Quisiera entender. Si yo quiero SSR no deberia tener un lenguaje mas eficiente para esto? Antaño se hacia con php / jsf / aspx, solo me surge esa duda