Architecture also: Backend-for-Frontend

BFF

A per-client backend that aggregates and shapes services for one frontend.


In plain terms

A web BFF, a mobile BFF, a partner BFF. Keeps OAuth refresh tokens out of browsers. Adds a hop; saves a thousand frontend headaches.

Origin

SoundCloud articulated the pattern around 2015 — each client (web, iOS, Android) gets its own backend. Sam Newman codified it in "Building Microservices" (2nd ed.).

Where it shows up in production
  • Netflix Falcor A specialised BFF generating client-tailored responses from a shared microservice mesh.
  • GitHub mobile Separate API surface from the main GraphQL API, optimised for mobile.
On Semicolony
Sources & further reading
Found this useful?