d4rk notes
Projects

Ashley's Corner

Self-hosted Ghost-backed blogging stack for Ashley's Corner, with a custom Next.js frontend, upload flow, search, newsletter UI, and Compose deployment.

dami2026-06-02nextjsghostbloggingdocker

Status

live

Difficulty

intermediate

Time Required

20m

Last Tested

2026-06-01

Overview

Ashley's Corner is a self-hosted blogging project that pairs Ghost content management with a custom Next.js reader experience.

The stack separates writing and administration from the public-facing interface. Ghost provides the publishing backend, while the Next.js app controls layout, search, subscription UI, routes, and presentation.

What It Does

  • Runs Ghost and a custom blog frontend under Docker Compose
  • Serves the public blog through a Next.js application
  • Includes blog post routes, UUID permalink routes, search behavior, and mobile drawer UI
  • Provides an upload flow for creating posts with title and description fields
  • Uses Ghost Content/Admin API configuration from environment variables
  • Places nginx in front of the Ghost and blog services

Architecture

The Compose file defines three main services: nginx, Ghost, and the Next.js blog app. Ghost stores content under a mounted ghost directory, while the frontend image runs the custom public experience.

The app code includes BlogLayout, search state, subscription UI state, upload pages, admin redirect behavior, and dynamic routes for posts.

Why It Matters

This is a good example of controlling the user experience around a proven CMS. Ghost handles the publishing engine, but the site owner keeps freedom over the public UI and deployment model.

Current Status

The project has a Dockerfile, Compose stack, Ghost integration dependencies, and custom frontend components. A future improvement would be documenting the content API lifecycle and cache/revalidation behavior for repeatable deployments.