Back to projects
ACAI — ASEAN Centre for Active Ageing
Government & Infrastructure

ACAI — ASEAN Centre for Active Ageing

Public website + headless CMS for a regional knowledge center on active ageing. Built end-to-end including admin tools, rich-text editor, and accessibility controls.

Next.jsReactTailwind CSSAWS AmplifyMongoDBTiptapZustandi18n

Overview

Overview

ACAI is the ASEAN regional knowledge center for active ageing. The site needed to serve two audiences at once: policymakers and researchers looking for publications and events, and older adults reading articles and educational content. I built both the public website and a custom headless CMS for the in-house team to manage content without touching code.

What I built

Public website

  • Server-rendered article and publication listings with category filters
  • Event calendar with detail pages and RSVP CTA
  • Researcher / staff directory and governance pages
  • Accessibility controls — adjustable font size persisted per visitor, since a portion of readers are older adults
  • Bilingual support (English / Thai) via Next.js App Router locale segments

Headless CMS

  • Rich-text authoring with Tiptap — supporting tables, images, links, headings, and inline code
  • Image upload to S3 with CloudFront CDN delivery
  • JWT-based auth with role-based access for editors
  • Draft / published states so editors could schedule content
  • Tag management, taxonomy, and bulk actions

Tech stack

  • Frontend: Next.js 14 App Router, React 18, Tailwind CSS
  • State: Zustand for global state, React Query patterns for server cache
  • Backend: AWS Amplify hosting, Lambda + Express API, MongoDB Atlas
  • Storage: S3 for assets, CloudFront for global delivery
  • Editor: Tiptap (ProseMirror) with custom extensions

My role

End-to-end ownership: requirements gathering with the editorial team, system design, full-stack implementation, deployment, and post-launch handover training. Worked closely with a designer who provided Figma mockups; everything else was mine.

What I learned

Building for accessibility from day one is much cheaper than retrofitting. The font-size control alone made the site usable for the audience it was designed for — and the patterns (focus rings, semantic HTML, keyboard navigation) applied everywhere else for free. Tiptap's extension system is also worth the upfront learning curve when editors need flexibility beyond a basic WYSIWYG.

ACAI — ASEAN Centre for Active Ageing — krittimet.dev