An AI-composed block CMS

Clients write content. The site keeps its design.

Paste text, drop photos. The AI proposes semantic blocks, code validates them, the site renders them. This site is written with it.

How it works

Docs →
  1. Paste

    An editor picks a page family, pastes plain text and drops photos. Nothing in the interface offers a block type, a column or a font.

  2. Compose

    The composer proposes the whole page as semantic blocks within the family's policy. Code validates every field, block and photo reference and refuses the rest.

  3. Render

    The renderer emits structure and class hooks only. A theme is a plain stylesheet. The Theme menu in the header swaps the design, never the data.

  4. Edit

    Wording and photos change in place on the live page, one click to save and publish. Every save is a revision, and any revision can be restored.

This site is the demo and the readme at once: every page was composed from plain text. Start with the docs, or read this site's own case study.

  1. Sep 10, 2026 · Design note

    Prompt injection in an authoring pipeline

    内容编排流程中的提示注入

    In a composer, the person pasting the material is the one being attacked. What typed output and deterministic validation remove, what the prompt handles, and what only a human reviewer can catch.

  2. Sep 10, 2026 · Build log

    Two days, in order

    两天,按顺序

    AIBlog went from an empty folder to a deployed site in two working days. A record of what happened when, because the order mattered more than the speed.

  3. Sep 10, 2026 · Release

    Fencing the one public model call

    为唯一的公开模型调用设栏

    The question box on the search page is the only model call a visitor can trigger. This release treats it as a cost surface: cheap gates first, no answer without relevant excerpts, and site-wide daily caps on both count and dollars.

  1. Setup

    Getting started

    快速开始

    Taking a new Next.js site from zero to authoring: what you need, install, the config file, the three routes you mount, the theme, and running it locally.

  2. Concepts

    Page families and content types

    页面家族与内容类型

    A content type is a structural contract, defined once in code. A page family is one recurring editorial purpose in a site, reusing a type and adding route, labels and editorial policy. Together they draw the boundary of what AIBlog manages.

  3. Theming

    The DOM contract and theming

    DOM 契约与主题化

    The renderer emits structure, class hooks and data attributes, and nothing else. This page sets out the two attribute families, the document shell, the token-first approach a theme should take, and the theme-swap test that keeps styles separate from content.

Showcase

All →
  1. 2026.07 – 2026.09 · APYouth

    Asia-Pacific Youth Growth Center USA

    美国亚太青少年成长中心

    A bilingual institutional site for a youth education non-profit: programmes, applications, certificate verification and three families of recurring editorial pages.

  2. 2026.09 · Cyphia Solutions

    AIBlog demo site

    AIBlog 演示站点

    The site you are reading: the first consumer of the AIBlog package and its own documentation, built for Cyphia Solutions.

  3. 2026.09 · AIBlog

    Every block, once

    每一种区块,各出现一次

    A sampler page built for AIBlog that shows every block kind the renderer knows, once each, so a designer can see the whole vocabulary in one place.