Blog base de NextJS: un blog moderno con Next.js 15 y Tailwind

Si buscas una plantilla de inicio de blog moderna creada con Next.js, el proyecto NextJS Base Blog es un excelente punto de partida. Se trata de una aplicación de blog de código abierto con todas las funciones, desarrollada con Next.js 15, React 19, TypeScript y Tailwind CSS 4 .

El proyecto proporciona una arquitectura limpia, una interfaz de usuario moderna componentsy una capa de API simulada, lo que lo hace ideal para desarrolladores que desean crear un blog rápidamente sin configurar un backend.

Repositorio de GitHub: https://github.com/bfotool/nextjs-base-blog

Este proyecto es especialmente útil para:

  • Desarrolladores aprendiendo la aplicación Next.jsRouter

  • Crear un blog o sitio web de contenido rápidamente

  • Creación de un proyecto repetitivo de Next.js

  • Desarrollo de funciones de UI antes de conectar una API de backend real

Descripción general del proyecto

NextJS Base Blog está diseñado como una plantilla de blog lista para producción con muchas características comunes que se encuentran en los sitios web de contenido modernos.

El proyecto incluye:

  • una página de inicio con publicaciones destacadas

  • páginas de publicaciones de blog

  • filtrado de categorías

  • búsqueda de texto completo

  • paginación

  • Tabla de contenido

  • publicaciones relacionadas

  • tema oscuro/claro

Una de las partes más interesantes del proyecto es la capa de API falsa, que simula una API REST mediante interceptores de Axios. Esto permite a los desarrolladores crear y probar la aplicación sin necesidad de un servidor backend .

Características principales

Página principal

La página de inicio muestra varias secciones importantes:

  • publicación de héroe destacado

  • filtros de categoría

  • una cuadrícula de publicaciones de blog

  • navegación paginada

El diseño es totalmente adaptable y está optimizado tanto para computadoras de escritorio como para dispositivos móviles.

Página de publicación del blog

A cada artículo se puede acceder a través de una ruta dinámica:

/blog/[slug]

La página de publicaciones del blog incluye varias funciones útiles:

  • contenido completo del artículo

  • tabla de contenidos automática

  • tiempo estimado de lectura

  • botones para compartir en redes sociales

  • Sugerencias de publicaciones relacionadas

Estas características ayudan a crear una experiencia de lectura profesional similar a las plataformas de blogs modernas.

Páginas de categorías

Los usuarios pueden explorar las publicaciones por categoría.

Ejemplo de ruta:

/blog/category/[slug]

Esta función permite a los lectores explorar contenido dentro de temas específicos.

Funcionalidad de búsqueda

El proyecto incluye una página de búsqueda incorporada:

/search

La búsqueda admite:

  • resultados en tiempo real

  • entrada antirrebote

  • buscando en títulos, extractos y etiquetas

Esto mejora la usabilidad y ayuda a los usuarios a encontrar contenido relevante rápidamente.

Páginas Acerca de y Contacto

El proyecto también incluye páginas adicionales que suelen encontrarse en blogs profesionales.

Acerca de la página

La página Acerca de presenta:

  • el equipo

  • la historia del proyecto

  • valores fundamentales

Página de contacto

La página de Contacto incluye un formulario completamente validado con:

  • validación de formulario

  • notificaciones de brindis

  • retroalimentación de éxito y error

Compatibilidad con el modo oscuro

El blog admite el modo oscuro y el modo claro .

Las características incluyen:

  • detección automática de temas del sistema

  • alternancia manual

  • Persistencia del tema usando localStorage

Capa de API falsa(desarrollo sin backend)

Una de las partes más interesantes de este proyecto es su sistema Fake API .

En lugar de llamar a un servidor real, la aplicación utiliza interceptores Axios para simular las respuestas de la API REST.

Cómo funciona la API falsa

  1. La instancia de Axios se crea en:

src/services/api-client.ts
  1. Cuando la variable de entorno está habilitada:

NEXT_PUBLIC_USE_MOCK_API=true
  1. Las solicitudes son interceptadas antes de llegar a la red.

  2. Los controladores simulados devuelven respuestas falsas con retrasos realistas(200 a 600 ms).

  3. Las respuestas se comportan como respuestas API reales.

Los datos simulados se almacenan en:

src/mocks/

Incluido:

  • publicaciones de muestra

  • autores

  • categorías

Puntos finales de API disponibles

La API simulada admite varios puntos finales:

Método Punto final Descripción
CONSEGUIR /publicaciones Entradas de blog paginadas
CONSEGUIR /publicaciones/destacadas Publicaciones destacadas
CONSEGUIR /publicaciones/:babosa Entrada de blog única
CONSEGUIR /categorías Lista de categorías
CONSEGUIR /autores Lista de autores
CORREO /contacto Enviar formulario de contacto

Pila de tecnología

El proyecto utiliza una pila frontend moderna.

Capa Tecnología
Estructura Next.js 15
Biblioteca de interfaz de usuario Reaccionar 19
Idioma Mecanografiado
Estilo Viento de cola CSS 4
Cliente HTTP Axios
Iconos Lucide React
Pelusa ESLint
Formato Más bonita

Esta pila proporciona:

  • seguridad de tipo fuerte

  • arquitectura mantenible

  • Experiencia de desarrollador moderna

Estructura del proyecto

La estructura del proyecto sigue una arquitectura limpia y escalable.

src/ 
├── app/ 
├── components/ 
├── services/ 
├── mocks/ 
├── contexts/ 
├── hooks/ 
├── types/ 
└── lib/ 

AplicaciónRouter

El appdirectorio contiene todas las rutas de la aplicación.

Ejemplos:

app/page.tsx 
app/blog/[slug]/page.tsx 
app/search/page.tsx 

Esto sigue la arquitectura de la aplicación Next.jsRouter introducida en versiones más nuevas de Next.js.

Componentes

La interfaz de usuario componentsestá organizada en grupos lógicos:

components/layout 
components/common 
components/blog 

Esta estructura mantiene el código de UI organizado y es más fácil de mantener.

Capa de servicios

La servicescarpeta contiene lógica relacionada con la API:

  • Configuración del cliente API

  • servicio postal

  • servicio de categoría

  • servicio de formulario de contacto

Esta capa separa la lógica de obtención de datos de la interfaz de usuariocomponents, lo que mejora la escalabilidad.

Guía de instalación

Requisitos

Antes de comenzar, asegúrese de tener:

  • Node.js 18 o posterior

  • npm, hilo o pnpm

Clonar el repositorio

git clone https://github.com/bfotool/nextjs-base-blog.git 
cd nextjs-base-blog 

Instalar dependencias

npm install

Configurar variables de entorno

cp .env.example .env

Iniciar el servidor de desarrollo

npm run dev

Abra su navegador y visite:

http://localhost:3000

Scripts disponibles

Dominio Descripción
npm ejecutar dev Iniciar servidor de desarrollo
npm ejecutar compilación Crear una compilación de producción
npm ejecutar inicio Iniciar el servidor de producción
npm ejecuta lint Ejecutar ESLint
formato de ejecución de npm Formatear código con Prettier
npm ejecuta comprobación de tipo Ejecutar comprobaciones de TypeScript

Cambiar a una API real

Si desea conectar el proyecto a una API de backend real, siga estos pasos.

Paso 1: Deshabilitar la API simulada

Editar el .envarchivo:

NEXT_PUBLIC_USE_MOCK_API=false

Paso 2: Establecer la URL base de la API

NEXT_PUBLIC_API_BASE_URL=https://your-api-server.com

Paso 3: Coincidir con los tipos de datos

Asegúrese de que su API de backend devuelva datos que coincidan con las definiciones de TypeScript en:

src/types/index.ts

No se requieren cambios de código adicionales.

Personalización de contenido

El contenido simulado se puede editar dentro de:

src/mocks/posts.ts 
src/mocks/categories.ts 
src/mocks/authors.ts 

Esto permite a los desarrolladores personalizar rápidamente el contenido de demostración.

Personalización del tema y la interfaz de usuario

El estilo global se puede encontrar en:

src/app/globals.css

El proyecto utiliza las siguientes fuentes:

  • DM Sans

  • JetBrains Mono

Puede modificar estilos o reemplazar fuentes según sus requisitos de diseño.

Conclusión

NextJS Base Blog es una plantilla de inicio potente y moderna para crear un blog con Next.js.

Las principales ventajas del proyecto incluyen:

  • pila de tecnología moderna

  • arquitectura limpia

  • API simulada para desarrollo

  • Fácil integración con API de backend reales

  • Interfaz de usuario adaptable y funciones modernas

Si está creando un blog, un sitio web para desarrolladores o una plataforma de contenido con Next.js, este repositorio puede ahorrarle un tiempo de desarrollo significativo.

Explora el código fuente aquí: https://github.com/bfotool/nextjs-base-blog