Journal
How DynapiCMS works under the hood: write-ups, practices, recipes.

The series finale — Mifflin-St Jeor on the client, a ring on pathLength=100, paired dark tokens, and the story of how stroke-width sliced the ring into an arc.

Nine JSON endpoints built on Liquid flows in one dense day — and the gotchas we came back with: an engine without Shopify's habits, the async schema rebuild, the limit cap, and a query library that didn't accept Liquid.

The PWA manifest and /sw.js both come out of platform flows. Cache strategies, static warm-up, and the module cache that kept a dead db.js alive after a release.

Every mutation is written to IndexedDB first and only then heads for the server. A queue keyed on client_uuid, an LWW merge at startup, and two stories about zombie entries.

Flows as HTTP endpoints in DynapiCMS: routes, the idempotent upsert on client_uuid, and the Liquid gotchas we collected while building the API for a food diary.

Registration, login, and password recovery from the platform's ready-made presets. Bcrypt with pepper, a 30-day session cookie, and data isolation between users.

A calorie and macro diary that installs onto your phone from a website and works offline. 7 content types, 26 flows instead of a backend, vanilla JS with no build step. Devlog, part 1.

How to build a landing page in DynapiCMS: the landing wizard — a short form instead of a brief, a typed plan, and automatic publication at your project root. A step-by-step walkthrough with screenshots: content types, flows, routes, moving the page.

An AI agent builds the catalog admin from one instruction Six parts of this series assembled a library catalog with a closed Vue admin, reader accounts, filters with…

Принимаем оплату через ЮKassa: заказ, вебхук и честный статус В демо-магазине demo-form.dynapi.ru покупатель выбирает кофе, заполняет форму заказа и нажимает «Оплатить».…