calternatives.org

The Centre for Alternatives is an independent research and policy forum established in 2003, publishing under the line "Ideas begin here". Its output — publications, the Bangladesh Peace Observatory, events, a fellowship programme — needed a site the researchers could run themselves.

Client
Centre for Alternatives
Timeline
2025
Role
Frontend Engineer
improvement in search visibility
65%improvement in search visibility
faster development speed
70%faster development speed
the forum's founding year
2003the forum's founding year

Key takeaways

  • Moving calternatives.org to headless WordPress with GraphQL and ACF produced a 65% improvement in search visibility and 70% faster development on subsequent content work.
  • Keeping WordPress as the editing surface meant the Centre's researchers needed no retraining, while Next.js took over delivery entirely.
  • Each route picks static generation or server rendering by how often its content actually changes, so crawlers get complete HTML on the first request rather than a hydration shell.
Screenshot of calternatives.org — Next.js 14, Headless WordPress, GraphQL project by Shafin Ahmed

The problem

A research organisation publishes constantly and cannot file a ticket for every post. But the people publishing are researchers, not developers, so the editing surface had to be WordPress-familiar. Meanwhile the whole point of publishing research is being found, and the previous site was not: search visibility was the actual deliverable, not a nice-to-have.

The approach

WordPress stays as the editing surface — familiar to the team, no retraining — but only as a headless content source queried over GraphQL, with Advanced Custom Fields giving each content type a real shape instead of a soup of post meta. Next.js renders it, choosing per route between static generation for stable pages and server rendering for anything that changes, so crawlers get complete HTML on first request rather than a hydration shell.

What it does

  • Headless WordPress with GraphQL and ACF — familiar editing, decoupled delivery
  • Per-route SSG/SSR strategy chosen by how often the content actually changes
  • Structured content types for publications, projects, events, and the fellowship programme
  • Bangladesh Peace Observatory section with its own content model
  • Idea submission flow for community contributions
  • Dockerised build and deploy

Stack

Next.js 14Headless WordPressGraphQLACFSSG/SSRDocker

Outcome

65% improvement in search visibility

70% faster development speed on subsequent content work

Researchers publish directly, with no developer in the loop

References

calternatives.org — questions

Common questions about calternatives.org and how it was built.

Building something similar?

I'm open to new opportunities and project work.