Building a custom CMS: The journey to Gorey Things

There is a distinct satisfaction in moving away from one-size-fits-all platforms to build your own space on the internet. For years, WordPress has been the default engine for writers.

But as web technologies have matured, the overhead of standard database plugins and rigid templates can begin to feel less like a utility and more like a constraint. The transition of my personal archive to goreythings.com provided the perfect catalyst to build something bespoke, lean, and intensely functional.

The goal wasn’t just to launch a static website, but to design an entire publishing ecosystem from scratch.

The architecture: Speed meets flexibility

At the core of the new platform is Astro, a modern web framework engineered for blistering speed. Astro operates on a "server-first" philosophy, delivering pure HTML to the reader while completely stripping away unnecessary client-side JavaScript.

To power the administrative backend without the heavy footprint of traditional databases, we integrated Google Firebase.

  • Firestore serves as our cloud database library, storing rich-text articles as flexible document schemas.

  • Firebase authentication locks down the admin perimeter, ensuring only verified administrative credentials can access the publishing workspace.

For the interface itself, we didn't want a clinical form. We built a customised workspace around the Tiptap rich-text editor. It gives me clean, distraction-free typography controls, seamless forest green hyperlinking, a tailored media uploader tied to Firebase Storage, and a dedicated historical calendar picker to seamlessly backdate and sort migrated archives in proper chronological context.

The ghost in the machine: Integrating Gemini 2.5

The real centerpiece of this custom CMS is its native artificial intelligence capability. Rather than relying on a generic, external AI chat window, we wired a secure, server-to-server connection directly to Google’s Gemini 2.5 Flash model.

But a raw AI model doesn’t know how a specific human writes. To overcome this, we engineered an intelligent "few-shot" voice profiling engine into the backend. Every time the AI Assist button is pressed, a dynamic database query scans my uploaded library, feeding up to 15 long-form articles into the context window as instant stylistic anchors.

The AI acts as an editorial ghostwriter. It cross-analyses the cadence, sentence length, and unique vocabulary of my past essays, adapting its output to match my natural voice.

Whether it is parsing a messy audio transcript, synthesising a stream of bullet points, or framing a historical essay, the model delivers polished HTML drafts tailored to my specific tone, completely filtered to remove corporate jargon or wordy academic preambles.

Ownership of the Stack

What makes this project special isn't just the technical components; it's the control. By handling the complete data pipeline, from the serverless Astro API routes to a custom SEO metadata field that optimizes search snippets, the platform is entirely optimised for exactly how I think and write. It is fast, intelligent, and built to last.

Reader Discussion (0)

No comments left yet. Start the conversation below!

Leave a Comment

Your email address is strictly confidential and will never be displayed publicly.