Three Ways to Integrate Dynamic Content into an EDS Site
Edge Delivery Services (EDS) is optimized for fast, mostly static delivery - but most real sites still need dynamic content: product data, inventory, personalization, or app-like views. Today, there are three primary patterns for bringing that dynamic content into an EDS site, plus an additional "advanced" option you can layer in as your architecture matures.
1. Bring Your Own Markup (BYOM)
Bring Your Own Markup lets you integrate dynamic experiences by serving fully-rendered HTML from your own backend or service, which EDS then treats as block markup.
Pros
- Server-rendered HTML is SEO-friendly and works with JavaScript disabled.
- Dynamic content can still benefit from caching if responses are cacheable.
- You can reuse existing backend services or apps without rewriting them as client-side code.
Cons
- You must ensure the returned HTML matches EDS block conventions and stays stable over time.
- More moving parts: deployment, monitoring, and error handling for your BYOM service.
- Personalization and experimentation need to be coordinated so they don't conflict with what the backend renders.
2. Client-Side Fetching (With or Without API Mesh)
The second common pattern is to render dynamic content entirely in the browser. An EDS block loads with a minimal placeholder; client-side JavaScript calls one or more APIs (REST or GraphQL), then updates the DOM with the returned data.
You can call APIs directly from the browser, or you can put Adobe API Mesh in front of them to aggregate multiple backends into a single, front-end-friendly endpoint.
Pros
- Very flexible: you can gradually add or change APIs without touching the EDS delivery pipeline.
- API Mesh can simplify the front end by hiding multiple backends behind one endpoint.
- Great fit for highly interactive widgets that update frequently after initial page load.
Cons
- Client-side fetching adds JavaScript and network calls, which can hurt performance if not carefully optimized.
- SEO can be impacted if critical content only appears after client-side rendering.
- You must handle CORS, authentication, and error states in the browser.
3. Edge-Side Integration
A third, more advanced option is to integrate dynamic content at the edge, using a worker or edge function in front of your EDS site. The worker intercepts the request, calls your APIs or personalization engines, and injects the dynamic data into the HTML before the response reaches the browser.
Pros
- Dynamic content is present in the initial HTML: good for SEO and performance.
- API keys and credentials stay on the worker side, not in the browser.
- Fewer client-side scripts and network calls for the user.
Cons
- More operational complexity.
- You must be very careful with caching and cache keys so personalization data doesn't leak.
- Debugging can be trickier because logic spans authoring, EDS, and edge compute.
Summary: When to Use Which
Most EDS projects end up using a mix: BYOM for "big" server-rendered chunks, client-side fetching for widgets and app-like elements, and edge-side integration for advanced personalization or high-value dynamic content.