Forma Blog

Notes on portable CMS craft.

SQLite, agents, SEO without plugin theater, and the small decisions that keep a site shippable.

32 posts Newest first
Showing 32 of 32
Forma

Connect your AI to Forma without copying a token

Paste one URL, sign in, and approve. Forma now connects to Grok and compatible AI tools through OAuth instead of hand-copied API keys.

Sep 6, 2026 Forma
Forma

Five useful ways to manage a Forma site with Grok or ChatGPT

Practical prompts for auditing pages, improving SEO, drafting posts, updating media, and safely undoing AI edits in Forma.

Sep 6, 2026 Forma
Forma

AI site editing without handing over the server

A high-level look at Forma’s security strategy: OAuth, narrow scopes, short-lived credentials, owner consent, revocation, and rollback.

Sep 6, 2026 Forma
Forma

What it took to make paste-one-URL AI connections work

The engineering story behind Forma’s OAuth-powered remote MCP connector: discovery, PKCE, token rotation, race conditions, CORS, and consent.

Sep 6, 2026 Forma
Forma

Formspree forms without a plugin

Keep contact forms off the PHP path. Drop a Formspree endpoint into a Forma snippet and ship HTML — no mailer, no extra tables, no plugin.

Sep 6, 2026 Forma
Forma

The Agent API grew up: redirects, a health check, and MCP parity

Redirects and a filesystem health check existed in Forma's Agent API but weren't listed in /api/v1/help or the MCP server. Both gaps are closed.

Sep 4, 2026 AF
Forma

Forma won't shut up about your default password

A non-dismissible red bar now stays on every admin screen until you change the default password or fix a failing hosting check, and uploads/ gets an automatic deny-PHP .htaccess.

Sep 4, 2026 AF
Forma

The page health panel: SEO feedback where you're already working

Every page and post editor now shows a contextual SEO health panel with one-click fixes, and the same check rides along on the Agent API's page and post lists as seo_ok / seo_issues.

Sep 4, 2026 AF
Forma

FAQ and custom schema without a plugin

Forma generates FAQPage JSON-LD straight from the visible accordion markup, and a data-fx-schema escape hatch handles everything else — validated on save, merged into one script tag.

Sep 4, 2026 AF
Forma

From mockup to live Forma page

A practical path from Figma or a static HTML folder to a shipped Forma page: slice the chrome, paste the unique layout, wire SEO, publish.

Aug 22, 2026 Forma
Forma

Build the chrome first: tokens, header, footer

Lock the shared shell before you design twenty pages. Tokens in site-head, navigation in site-header, closing marks in site-footer.

Aug 22, 2026 Forma
Forma

Forma is not a theme store. You bring the design.

There is no theme marketplace. Your HTML and CSS are the theme. Here is how to give Forma a real web design instead of fighting a preset.

Aug 22, 2026 Forma
Forma

Let Cursor edit Forma — with a token, not a shell

Create a scoped Agent API token, point Cursor at /api/v1/help, and let an agent edit pages, posts, and SEO without SSH or FTP.

Aug 22, 2026 Forma
Forma

Your first Forma page

Create a page, set the slug and SEO, drop in snippets, and ship HTML — the whole Forma page workflow without a theme framework.

Aug 22, 2026 Forma
Forma

When PHP died: the afternoon FastCGI went silent

DreamHost returned “No input file specified.” PHP was gone. Here is what broke, what we built so it cannot take a Forma site down again, and how to watch for it.

Aug 22, 2026 Forma
Forma

The 15-minute Forma SEO launch checklist

A practical launch pass for titles, descriptions, social images, schema, robots, sitemaps, redirects, and Forma’s SEO health report.

Aug 22, 2026 Forma
Forma

Snippets and Twig: a tiny design system inside Forma

Build reusable headers, footers, calls to action, and data-driven blocks with Forma snippets and Twig—without a theme framework.

Aug 22, 2026 Forma
Forma

Built-in site search with one shortcode

Add fast, progressively enhanced search to any Forma page with [[search]], SQLite FTS5, and customizable result templates.

Aug 22, 2026 Forma
Forma

HTML cache: static speed without giving up your CMS

How Forma writes real HTML for public URLs, keeps admin editing dynamic, and serves a fast site without waking PHP for every page view.

Aug 22, 2026 Forma
Forma

Publish a Forma blog post in ten minutes

Markdown body, a real description, a featured image, categories, and the SEO fields that actually show up in search and shares.

Aug 22, 2026 Forma
CMS

htmx is how Forma stays interactive without becoming a SPA

Declarative HTML, server-rendered truth, tiny surface area. Why Forma’s admin uses htmx — and why that’s exactly what agents want too.

Aug 4, 2026 Forma
AI

The Agent API surface, mapped

What a scoped Forma token can actually touch — help, pages, posts, snippets, media, SEO, settings, packages — and what it deliberately cannot.

Aug 4, 2026 Forma
CMS

Site packages: the migration story that doesn’t suck

One zip. Manifest, SQLite, uploads. Move hosts, clone staging, or hand a site to an agent — without a migration consultant.

Aug 4, 2026 Forma
CMS

Admin UX assumptions (why Forma feels the way it does)

Server-rendered, htmx-enhanced, Markdown-first, collapse the chrome when you’re writing. The admin is for humans who ship — and agents who don’t need a SPA.

Aug 4, 2026 Forma
CMS

Forma vs Grav, Statamic, Kirby (and friends)

Flat-file elegance, Laravel-grade CMS power, Kirby’s chef’s-knife DIY — and where a portable SQLite + Agent API CMS actually fits.

Aug 4, 2026 Forma
Writing

Markdown still wins for longform

Block editors are fine until you’re writing. Markdown keeps posts portable, diffable, and friendly to humans and agents alike.

Aug 3, 2026 Forma
SEO

SEO without plugin theater

Robots, sitemaps, Open Graph, JSON-LD, redirects — the boring fundamentals. You shouldn’t need five plugins to ship them.

Aug 2, 2026 Forma
CMS

Portable sites beat platform lock-in

Host hopping shouldn’t require a migration consultant. Versioned site packages — database, uploads, manifest — make portability real.

Jul 31, 2026 Forma
AI

AI agents belong in your CMS — with a leash

Cursor and friends can edit content over an API. That’s powerful. It’s also why scopes, HTTPS, and audit trails matter.

Jul 28, 2026 Forma
CMS

The weight of WordPress

WordPress won the web. It also shipped a culture of plugins, updates, and ceremony. When is that weight worth it — and when should you walk?

Jul 25, 2026 Forma
CMS

SQLite is enough (and that’s the point)

You don’t need MySQL to run a serious site. One file, fast enough, portable enough — here’s why SQLite belongs under a CMS.

Jul 22, 2026 Forma
Forma

Welcome to Forma

Start here — then read the rest of the Forma blog on CMS craft, AI agents, and portable sites.

Jul 20, 2026 Forma