Mojimoto · Our own product · SaaS

Building a headless CMS in Laravel, because the ones we used kept getting in the way

Mojimoto is the headless CMS we built for ourselves and then for other people. A delivery API, a write API, an MCP server and SDKs for five frameworks, shipped by one developer working AI-first.

Visit the live site
8
SDK packages

npm and Composer

5
frameworks supported

React, Vue, Nuxt, Next, Laravel

1
developer, AI-first

plus a very patient editor

0
slice zones

on purpose

The problem

Every website we built needed a CMS, and every CMS we used made us pay for the privilege of fighting it. Slice zones that turned into JSON soup. Editors that non-technical clients could not use without a tutorial. Pricing that jumped the moment a project got real. And none of them spoke to the AI tooling we were increasingly building with.

We wanted something Contentful-shaped and simple: flat typed fields, composition through references, a rich text model that migrated cleanly from what we already had, and an API a model could drive as easily as a person.

What we did

Kai built Mojimoto in Laravel, with Postgres behind it and Stripe for billing. Content types are flat sets of typed fields; pages compose sections through reference fields resolved to a configurable depth. Rich text is Prismic-compatible on purpose so existing sites migrate without loss.

The write API and the MCP server were designed together, which is why Claude Code can create content types, upload assets and publish documents against it directly. Webhooks are HMAC-signed. Every write is audit-logged and attributed to the token that made it.

The SDK monorepo followed: a typed client, a framework-agnostic rich text core, and adapters for React, Vue, Nuxt and Next, published to npm through trusted publishing. This website added the Laravel package, which renders rich text server-side and flushes its cache on a publish webhook.

What changed

Mojimoto now runs real customer sites, including this one. It is also the clearest example of how we build for clients: a product with paying users, the boring parts (auth, rate limits, billing, audit logs) done properly, shipped by a small team working AI-first with review gates and tests first.

If you want to see how we work, the SDK is open source and the API docs are written for both people and models.

We built it because we needed it. Other people using it is the bonus.
- Kai

Yours next?

Let's write your case study.

Book a call