Skip to content
Publishing at cadence

Content Platforms & CMS

Ghost and headless CMS work, editorial workflow and scheduled publication, membership and subscription publishing, and the migrations that move a publication between platforms without losing URLs or archives.

A publication is a delivery problem in different clothes. Something has to ship on a schedule, through review, under a brand, to an audience that notices when it does not. The practices that make a publication reliable are the same ones that make a software system reliable; the vocabulary is different.

What we build

The work itself

01

Ghost and headless CMS

Theme development, Content API integration, custom membership flows and the glue code that makes a headless CMS behave like one editors can actually use rather than one that is only comfortable for engineers.

02

Membership and subscription publishing

Paid and free tiers, gated content, payment and renewal flows, and the retention engineering — dunning, resubscribe paths, email deliverability — that decides whether a subscription business compounds or leaks.

03

Editorial workflow and scheduled publication

Draft, review, approval and schedule, with the pipeline-level evidence that an editor needs to track a piece without a status meeting. Scheduled publication that is monitored like any other scheduled job rather than hoped at.

04

Platform migration without archive loss

Moving a publication between CMS platforms with URLs preserved, redirects complete, archives intact and search indexes rebuilt. The failure mode here is permanent — a lost URL is a dead backlink — which is why the migration is tested against the archive, not against a sample.

05

Performance and the SEO basics as build requirements

Core Web Vitals budgets, structured data, canonical URLs, feed hygiene and crawl behaviour, treated as acceptance criteria the site has to pass rather than an afterthought bolted on when traffic flattens.

The hard parts

What goes wrong, named up front

A vendor who cannot tell you where their own discipline is difficult has either not done it or is not going to tell you the truth about your project either.

The content model outlives the platform

The CMS will be replaced within the next decade; the archive will not. A content model designed for one platform’s field types is a migration disaster in waiting, which is why the data model is designed first and the CMS second.

Editorial trust is spent, not earned, by every scheduled post

An editor who has been burned by a missed publication once will shadow-schedule everything thereafter, which costs the whole organisation hours per week forever. Scheduled publication must be monitored and reliable before anyone is asked to depend on it.

Migration is where archives die

URLs change, redirects miss edge cases, images are stripped, embeds break. The honest version of a migration project assumes an archive-wide crawl diff is required before cutover, not a sampling plan drawn up to fit the schedule.

Product & Web

  • Next.jsThe default application framework — App Router, server components, static generation for anything that does not need to be dynamic.
  • ReactComponent model across web and, through React Native, mobile.
  • TypeScriptEvery project, strict mode, no exceptions.
  • Tailwind CSSStyling and design-token enforcement, with tokens defined once and referenced everywhere.
  • VercelHosting, preview deployments per pull request, edge runtime and analytics for Next.js applications.
  • CloudflareDNS, CDN, edge workers, R2 object storage and DDoS protection where a project needs its own edge layer.

Backend & Data

  • SupabasePostgres with authentication, row-level security, realtime subscriptions, storage and edge functions.
  • PostgreSQLThe default relational store, self-hosted or managed depending on the estate.
  • UpstashServerless Redis, queues and vector storage — caching, rate limiting, background jobs and retrieval indexes that bill per request.
  • RenderLong-running services, background workers and cron jobs that do not fit a serverless execution model.
  • Node.js & PythonApplication services and data or ML workloads respectively.
  • RustLatency-sensitive services and on-chain runtimes, where the performance and safety guarantees pay for the slower development cycle.
  • AWS, GCP & AzureWhere an enterprise estate, data residency or procurement requires a major cloud, with infrastructure defined in Terraform.

Delivery & Operations

  • GitHub & GitHub ActionsSource of truth, pull request review, CI pipelines and release automation.
  • Claude CodeAI-assisted implementation, migration and review inside the repository, with every change going through the same pull request and test gate as any other.
  • ResendTransactional email — enquiries, notifications and product mail — with delivery and bounce visibility.
  • OpenTelemetryVendor-neutral traces, metrics and logs, so observability is not a lock-in decision.
  • TerraformInfrastructure as code, so environments are reproducible rather than remembered.
  • Feature flags & remote configSeparating deployment from release across web and mobile, with kill switches on anything risky.

This is what we reach for when the decision is ours. When you already have an estate, we work in it — the stack is part of the engagement, not a precondition of it.

Roles we staff

  • Full-Stack Engineer
  • CMS Engineer
  • Platform Engineer
  • Technical SEO Engineer
  • Editorial Operations Lead

How to buy it

Pick the engagement model separately

Capability answers who works on it. The engagement model answers what we are accountable for, how it is priced and how it ends.

Other capabilities

Probabilistic systems

AI & Applied ML

LLM applications, retrieval systems, agents and applied ML built to a standard you can put in front of a regulator — with evaluation harnesses, cost controls and failure behaviour designed in rather than discovered in production.

Software that acts

Agentic Systems & Automation

Systems that choose their own next step — tool-using agents, orchestrated workflows and automation that spans your existing systems — designed so that what they are permitted to do, and what happens when they are wrong, are decided up front.

Irreversible deployment

Blockchain & Smart Contracts

Protocol and application development where a deployment cannot be rolled back and a defect is a withdrawal. Contract engineering, security review, upgradeability design and the on-chain boundary decision.

Gated releases

Mobile & Cross-Platform

iOS, Android and cross-platform applications delivered continuously despite a third party sitting between your merge and your users — staged rollouts, feature flags, release trains and a native-versus-cross-platform decision made on economics.

The paved road

Platform & Data

The substrate the other three stand on: cloud infrastructure, deployment pipelines, observability, data platforms and the internal paved road that determines how fast every team above it can move.

Software that moves

Robotics & Embedded

ROS2 applications, perception and state estimation, embedded and motor control, and the simulation-first workflow that lets behaviour be proven in a simulator where failure costs nothing before it meets hardware.

Evidence over opinion

Delivery Telemetry & Observability

Checks, runs, metrics and incidents across web, publishing, AI and blockchain systems — flow metrics with their denominators, daily verification of live products, and alerting designed not to cry wolf.

The work between the systems

Workflow Automation & Integration

Integration between the systems you already run, scheduled jobs with named ownership, cross-system reactions and the auto-recovery that keeps them honest — because an automation that fails silently is worse than no automation.