
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