Skip to content
abin.th

Full-stack · Content platform

Industry association · Confidential

Editorial & Publishing Platform

A publication platform for an industry body, with long-form articles, interviews, podcasts and a weekly newsletter for business and policy readers. Built across the full stack.

Client and product names are withheld for confidentiality.

Problem

An industry association needed its own home for ideas, reporting and in-depth conversations, with several content formats, organised by topic and backed by reader accounts and a newsletter.

What I built

  • Backend APIs in Node.js and Express
  • The reader-facing frontend in Next.js
  • A CMS and admin tooling for the editorial workflow
  • Reader accounts and authentication
  • Newsletter subscriptions
  • Podcast and media content
  • Topic categories, archive and search
  • Infrastructure and deployment

Technical highlights

  • Worked across backend, frontend, CMS and infrastructure
  • Multiple content formats: articles, interviews, podcasts, editorials and short snippets
  • Topic-based categorisation and search across the archive
  • Reader accounts and a weekly newsletter

Key decisions

  1. 01

    Next.js for the reader site

    Server-rendered pages that search engines index well, fast loads for readers, and revalidation so new articles go live without a full rebuild. It also shares React skills with the admin side.

  2. 02

    A custom-built CMS

    A custom admin and editorial workflow on Node.js and Express, built around how this publication actually works, rather than bending an off-the-shelf CMS to fit.

  3. 03

    A relational content model in MySQL

    Articles, authors, categories and tags are naturally relational. Media like podcast audio and images is served from storage behind a CDN, the weekly newsletter runs through an email provider, and search indexing covers the archive.

Hardest problems

  • Designing the editorial workflow: drafts, review, scheduling and publishing
  • Supporting many content formats (articles, podcasts, interviews, snippets) in one system
  • Keeping pages fast and well indexed for search engines

Architecture

  1. Next.js reader site | CMS / admin
  2. Node.js · Express APIs
  3. MySQL

Stack

  • Node.js
  • Express.js
  • Next.js
  • MySQL