The Challenge

The client needed a unified home for three types of content — written essays, audio podcasts, and YouTube videos — without stitching together three separate tools like Substack, Buzzsprout, and WordPress. Existing platforms couldn't support the specific combination of features required: persistent reader highlights tied to user accounts, text-to-speech reading, a branded subscriber newsletter, granular analytics tracking views and plays separately, and a custom admin experience with role-based access for publishers and administrators. Everything had to work seamlessly across desktop and mobile.

Our Solution

We built a monorepo platform with a NestJS REST API and a Next.js frontend.

The platform ships with a rich-text editor for post authoring, audio upload for podcast episodes, and automated YouTube channel sync with view counts.

Readers get a Medium-style reading experience with font and width preferences, a reading progress bar, and a text-to-speech player with seek, speed control, and voice selection.

A persistent highlight system lets signed-in users colour-select any text, add private notes, and return to their highlights across sessions — with a guest preview that nudges sign-up.

Authentication uses email OTP verification, JWT refresh tokens, and forgot-password flows.

Created a newsletter with weekly digest automation and broadcast capability.

Real-time engagement events (views, plays, likes) are tracked and surfaced in an admin analytics dashboard.

Client Impact

  • Replaced three separate tools with one unified platform, reducing content management time by eliminating context switching
  • Readers can highlight, annotate, and listen to every article — features typically found only on premium reading apps like Kindle or Readwise
  • Email open rates improved through automated weekly digests and subscriber-level personalisation, with users able to manage subscription preferences from their profile
  • YouTube video views are automatically synced and reflected in the analytics dashboard alongside audio plays and article views — giving a single source of truth for content performance
  • Admin and publisher roles allow team content management without sharing credentials or paying for third-party CMS seats
  • SEO-optimised with Article, PodcastEpisode, and WebSite structured data, automated sitemap pings on every deploy, and a weekly GitHub Actions audit — all without a paid SEO tool
  • Deployed globally on Vercel edge with sub-second response times on all public pages

Project Links