Fastify Backend for Vue SPAs
Fastify routes, CORS, serving static Vue build, rate limiting, request validation.
Why Fastify for a Vue SPA
Fastify is a fast, low-overhead Node.js web framework with a strong plugin ecosystem and built-in schema validation. It makes an excellent API backend for a Vue single-page application, and can also serve the built static files.
Creating the Server with a Logger
Instantiate Fastify with logger: true to get structured request logging via Pino out of the box. This is invaluable for debugging API calls from the Vue app.
import Fastify from 'fastify'
const app = Fastify({
logger: true
})
await app.listen({ port: 3000, host: '0.0.0.0' })