Skip to content

Site-Targeted BFF Grouping

BFFs in this repo should be treated as front-end-targeted contracts.

They are not only domain-specific services. They are shaped for the needs of specific site families and concrete front-end experiences.

Grouping Rule

BFF contracts should be understood under each site or site family.

That means:

  • ISR-Sites define the BFF contracts needed by ISR marketing properties
  • CRUD-Sites will define the BFF contracts needed by operational applications
  • Metric-Sites will define the BFF contracts needed by metrics and data experiences

Manifestation Rule

Content manifestation typically occurs at the Block level.

Typical sequence:

  1. metadata selects the page and block structure
  2. the site-targeted BFF supplies the payload needed for those blocks
  3. the block manifests the content in the rendered UI

Current Example

For ISR-Sites today:

  • product blocks hydrate from product-facing BFF contracts
  • article blocks hydrate from article-facing BFF contracts
  • contact blocks submit and read state through contact-facing BFF contracts