Case Study

ProWrite

ProWrite is a Next.js blog template built to help writers launch SEO-optimized blogs quickly. It offers features like Contentful CMS integration, SEO optimization, Google Analytics, AdSense, SendGrid, Mailchimp, and responsive design.

Next.js blog templateSelf-initiated
ProWrite's cover image

Key metric

2

Content Sources Supported

Outcome

Enabled switching between Contentful and MDX with automated template delivery after purchase.

Tools

TypeScriptNext.jsContentfulMDXMailchimpSendGridLemon Squeezy

Contributions

  • Frontend development
  • Backend development
  • CMS integration

Challenges

One of the primary challenges was securely delivering the template to users immediately after they completed a purchase through Lemon Squeezy—without relying on manual processes.

Another challenge was to accommodate both headless CMS (Contentful) and local markdown (MDX), allowing flexibility for different types of users with varying technical preferences.

Solutions

To automate post-purchase access, I set up webhooks with Lemon Squeezy that trigger a GitHub API call, adding buyers as contributors to a private GitHub organization repository. This allowed for secure, instant, and scalable delivery of the codebase.

For flexible content sourcing, I built an abstraction layer that switches between Contentful and MDX using a single environment variable: CONTENT_SOURCE. This makes the template developer-friendly and easy to configure without code changes.

Notable features

  • SEO-optimized with fast load times
  • Fully responsive and mobile-first UI with pixel-perfect precision
  • Toggleable content source: Contentful CMS or MDX
  • Newsletter and email automation via Mailchimp and SendGrid
  • Ad revenue readiness via Google AdSense
  • Payment and licensing integration with Lemon Squeezy
  • Google Analytics for traffic monitoring
  • Developer-friendly deployment and environment config

1 / 8

Let's Work Together

Have an exciting
project?

I'm open to freelance opportunities and interesting collaborations. Let's have a quick chat to see if we're a good fit.

We use cookies to personalize your site experience.