Salta ai contenuti

Introduzione

yRest è un server REST API mock senza configurazione per sviluppatori frontend. Legge un file db.yml ed espone automaticamente una REST API CRUD completa — incluse relazioni, parametri di query, paginazione, stream SSE e route statiche personalizzate — senza bisogno di un backend.

Terminal window
npx @yrest/cli serve db.yml
# → REST API su http://localhost:3070
  • Stai costruendo un frontend e hai bisogno di un’API realistica prima che il backend sia pronto.
  • Hai bisogno di un mock prevedibile per test di integrazione (Vitest, Playwright, Cypress).
  • Vuoi fare una demo di un flusso UI senza mantenere un server reale.
  • Hai bisogno di SSE o di un comportamento di endpoint personalizzato che json-server non può gestire.

Sia yRest che json-server condividono la stessa filosofia zero-config — puntali a un file di dati e ottieni subito una REST API. La differenza sta in quanto lontano arriva ciascuno. yRest estende il modello con un sistema di relazioni più ricco, operatori di query tipizzati, stream SSE, scenari mock condizionali e una API programmatica completa. Se json-server copre le tue esigenze, continua a usarlo. Se hai raggiunto i suoi limiti, yRest è il passo successivo.

FunzionalitàyRestjson-server
Database YAML
Zero config
CRUD completo
Operatori di campo (_gte, _like, _regex…)
Relazioni: many2one, one2one, many2many
Auto-embedding (_nested: true)
Proiezione di campi (_fields)
Modalità paginabile (risposta envelope)
Route personalizzate (_routes)
Variabili di template ({{}params.id}})
Scenari condizionali
Funzioni handler
Route SSE (_method: SSE)
Endpoint snapshot
Export OpenAPI 3.0
API programmatica per framework di test
Tipi TypeScript

Aggiungi yRest al tuo progetto come dipendenza di sviluppo:

Terminal window
npm install -D @yrest/cli

Oppure eseguilo direttamente senza installare — utile per una prova rapida:

Terminal window
npx @yrest/cli serve db.yml

Una volta installato, crea i file di avvio e lancia il server:

Terminal window
npx @yrest/cli init # crea db.yml + yrest.config.yml nella directory corrente
npx @yrest/cli serve db.yml # → REST API su http://localhost:3070

Il server osserva le modifiche a db.yml e si ricarica automaticamente. Vai all’Avvio rapido per una guida passo dopo passo con un esempio reale.