Quiz Entry - updated: 2026.07.14
How do the three approaches to generating dynamic content differ?
Server-side builds the HTML on the server per request, client-side ships JavaScript that builds it in the browser, and web services skip HTML entirely to return raw data for other programs.
All three produce "dynamic" results, but they differ in where the code runs and when (and whether) HTML is created.
| Approach | Where code runs | What it produces |
|---|---|---|
| Server-side (SSR) | web server | full HTML, on every request |
| Client-side (CSR) | browser | HTML, after the JS loads |
| Web services | external service | data only (JSON/XML), no HTML |
- Server-side (SSR) — languages like PHP, Python, Ruby, Java, Node.js generate the complete page on the server. Great for SEO and a fast first paint. Examples: WordPress, Laravel.
- Client-side (CSR) — the server sends a near-empty page plus JavaScript (React, Vue, Angular), and the browser renders the UI. Snappy interaction after the initial load, but that first load is heavier.
- Web services — return structured data (JSON, XML) with no presentation at all, to be consumed by another program. Examples: a REST API, GraphQL.
Reality check: modern stacks mix all three — e.g. Next.js does SSR for the first page, CSR for subsequent interaction, and exposes API routes (web-service style) for data.