Ir al contenido

Introducción

yRest es un servidor REST API mock sin configuración para desarrolladores frontend. Lee un archivo db.yml y expone automáticamente una API REST CRUD completa — incluyendo relaciones, parámetros de consulta, paginación, flujos SSE y rutas estáticas personalizadas — sin necesidad de backend.

Ventana de terminal
npx @yrest/cli serve db.yml
# → REST API en http://localhost:3070
  • Estás construyendo un frontend y necesitas una API realista antes de que el backend esté listo.
  • Necesitas un mock predecible para tests de integración (Vitest, Playwright, Cypress).
  • Quieres hacer una demo de un flujo de UI sin mantener un servidor real.
  • Necesitas SSE o un comportamiento de endpoint personalizado que json-server no puede manejar.

Tanto yRest como json-server comparten la misma filosofía sin configuración — apúntalos a un archivo de datos y obtén una API REST al instante. La diferencia está en hasta dónde llega cada uno. yRest extiende el modelo con un sistema de relaciones más rico, operadores de consulta tipados, flujos SSE, escenarios de mock condicionales y una API programática completa. Si json-server cubre tus necesidades, sigue usándolo. Si has llegado a sus límites, yRest es el siguiente paso.

CaracterísticayRestjson-server
Base de datos YAML
Sin configuración
CRUD completo
Operadores de campo (_gte, _like, _regex…)
Relaciones: many2one, one2one, many2many
Auto-embedding (_nested: true)
Proyección de campos (_fields)
Modo paginable (respuesta envelope)
Rutas personalizadas (_routes)
Variables de plantilla ({{}params.id}})
Escenarios condicionales
Funciones handler
Rutas SSE (_method: SSE)
Endpoints de snapshot
Exportación OpenAPI 3.0
API programática para frameworks de test
Tipos TypeScript

Añade yRest a tu proyecto como dependencia de desarrollo:

Ventana de terminal
npm install -D @yrest/cli

O ejecútalo directamente sin instalar — útil para una prueba rápida:

Ventana de terminal
npx @yrest/cli serve db.yml

Una vez instalado, crea los archivos de inicio y arranca el servidor:

Ventana de terminal
npx @yrest/cli init # crea db.yml + yrest.config.yml en el directorio actual
npx @yrest/cli serve db.yml # → REST API en http://localhost:3070

El servidor observa los cambios en db.yml y se recarga automáticamente. Consulta Inicio rápido para un tutorial paso a paso con un ejemplo real.