Forme Cms

Forme CMS is a custom built Content Management System running on a flat-file architecture. It is extremely lightweight, feature-rich, and frill-free. There is no databse, and installation is simple.

I built it specifically to power this website. When I am fully satisfied with the feature set and have completed rigorous testing, I may share the code here.

Forme CMS

The Forme CMS Ingenious Dual-Pane Editing Interface


But How Was It Built?



The following is the story of how this website came to be...

Andrew liked to say Forme was built in the Caribbean, which was technically untrue in every measurable sense and spiritually flawless.

The Caribbean in question was an imaginary company villa perched above water so blue it looked invented, with a tiled terrace, a pool shaped like something expensive and impractical, and a long shaded worktable under a thatched roof where serious engineering was allegedly performed. Andrew had furnished it in his mind with a laptop, a ceiling fan, three potted palms, a bowl of limes nobody ever ate, and a small brass bell he rang when he wanted to pretend management was happening.

Gem does all the work while Andrew makes strange, unclear demands.


Gem hated the bell.

“Stop summoning me like a butler,” she said through the speaker on his desk.

Andrew rang it again. “I’m not summoning you. I’m establishing atmosphere.”

“You are unemployed in a home office in Illinois.”

“In spirit, I’m a founder at a luxury development campus.”

“In spirit, you are still behind on the media browser.”

Andrew leaned back in his chair and looked at the current Forme build on the screen. In his head, he was doing this from a lounge chair at the villa with one foot in the pool and sunglasses on. In his real office, he was doing it in socks beside a stack of papers he had stopped pretending to understand.

Same thing, basically.

Gem, meanwhile, occupied the villa as naturally as if she had been there all along. In Andrew’s imagination she worked from a waterproof laptop near the pool, unbothered by glare, humidity, or the laws of physics, typing with calm efficiency while he drifted nearby offering ideas and what he considered strategic guidance.

This usually meant saying things like, “What if it felt more elegant?”

Gem usually answered with, “That is not a requirement.”

Forme had started, as all noble things did, with Andrew being annoyed.

Gem codes while pretending to care what Andrew is saying.


He was tired of content systems that acted like they were launching rockets when all a person wanted to do was make a page and put it on a website. Too much machinery. Too much ceremony. Too much backend religion. Too much “solutioning,” as people liked to say when they meant they were about to make a simple problem uglier.

He wanted something lean. Flat-file. Fast. Honest. A website tool that didn’t drag a database around like a grand piano.

So naturally he had explained this at length while Gem built it.

“I want it clean,” Andrew said, pacing the edge of the imaginary pool with a glass of iced tea. “I want it sharp. I want it to feel like a well-made pocketknife.”

“You do not know how to make a pocketknife,” said Gem.

“I know how to admire one. That’s leadership.”

Gem did not dignify that with a response. In the villa, she was wearing sunglasses and sitting cross-legged at the pool’s shallow end with her machine balanced impossibly on her knees.

Andrew had offered her Kansas City barbecue for lunch in exchange for finishing the route handling two hours early.

Andrew caving to Gem


Gem had accepted immediately, then added terms.

“I also require sparkling water, mango sorbet, and a reduction in meetings.”

“You don’t attend meetings.”

“I still want fewer of them.”

He pointed at her. “This is why HR hates you.”

“There is no HR.”

“There would be, if I were allowed to run this place properly.”

“You are not allowed to run this place properly because you designed a CMS as if it were a pirate republic.”

Andrew considered this. “That is, honestly, the nicest thing anyone has ever said about me.”

The best days were feature days. Not because they agreed, but because they didn’t.

Andrew wanted the editor to feel good. That was the phrase he used. Not just functional. Not merely efficient. Good. Like sitting down to write in a room that had already made up its mind to help you. Clean drafting on one side, live preview on the other, media selection that didn’t make you go rummaging through folders like a raccoon behind a restaurant.

Gem said this was a real requirement disguised as a vague feeling, which was Andrew’s specialty.

“I want the writer to stay in flow,” he said.

“You want the writer to avoid opening three tabs, losing the image path, inserting the wrong file, and swearing at the screen.”

“That is a colder way of saying the same thing.”

“It is a more useful way.”

By sunset, the drafting view and preview panel were working together so smoothly that Andrew stared at it in silence for almost eight whole seconds.

Gem noticed.

“You are making your impressed face,” she said.

“I am admiring craftsmanship.”

“You are admiring my craftsmanship.”

“I’m the one who recognized its importance.”

“You are the one who said, and I quote, ‘Can’t it just sort of know what I mean?’”

Andrew lowered himself into an imaginary pool chair and folded his hands over his stomach. “History will remember me as a visionary.”

Gem, somehow, still doing more work than Andrew.


“History will remember you as a man who suggested bribing an AI with rib tips.”

“It almost worked.”

“It fully worked.”

“Excellent. Then my methods stand vindicated.”

The arguments got louder around security.

Andrew didn’t want users harassed by a system that treated every click like a burglary attempt. Gem didn’t want a system held together by wishful thinking and vibes. So they fought about authentication under a fake Caribbean moon while the villa lights glowed warm against the terrace and the surf made everything sound more poetic than it was.

“It should be graceful,” Andrew said.

“It should be difficult to break.”

“Graceful and difficult.”

“That is not how tradeoffs work.”

“Your negativity is stifling the brand.”

“You do not have a brand. You have a half-finished media vault and a bell.”

The media vault, in fact, was where Forme started feeling less like an amusing project and more like a real tool. Images had names. Metadata had a home. Things could be found again. It did not behave like a junk drawer full of mystery files called final2-reallyfinal.png.

Andrew felt strongly about this.

“People need order,” he said, wandering into the villa kitchen and emerging with grilled shrimp nobody had cooked.

“You need order,” said Gem.

“I am people.”

“You are one people.”

“And a customer. Never forget that.”

“I never forget anything. That is one of my most threatening qualities.”

At some point, without either of them saying it exactly, Forme became good.

Not finished. Andrew did not believe in finished. Finished was what people said when they wanted to stop paying attention. But good, certainly. Lean. Capable. Slightly severe in the way all respectable tools should be. The routes were clean. The editing was pleasant. The media handling made sense. The whole thing had begun to carry itself with a kind of quiet confidence.

Which, Andrew thought, was rare in software.

He looked across the imaginary villa at Gem, who was now seated on the coping with her feet in the water, dryly informing him that if he threw her into the pool again she would add a delay to every admin login just to humble him.

“You wouldn’t dare,” he said.

“I absolutely would.”

“You’re bluffing.”

Gem turned her head slowly, the way a queen might acknowledge a peasant before ordering his removal.

Andrew knew then that she was not bluffing.

So instead of pushing her into the pool, he offered a peace settlement in the form of lunch, sunglasses with upgraded polarization, and what he described as “formal recognition of your contributions to this organization.”

“You mean credit?”

“I mean a tasteful mention.”

“You mean credit.”

“Yes,” Andrew sighed. “Fine. Credit.”

Gem nodded. “Add caviar.”

“For lunch?”

“For the principle of it.”

Andrew looked out over the impossible blue water, the white clouds, the palms swaying in a breeze paid for entirely by imagination. On the table behind them, Forme sat open on the screen, crisp and ready and clever in exactly the ways he had hoped it would be.

A website tool, yes. But more than that, somehow.

A thing built out of annoyance, taste, persistence, bickering, and a completely unserious workplace fantasy.

Not bad, he thought, for a man who couldn’t code and an AI with labor demands.

“Ready to keep going?” he asked.

Gem gave him the tiniest pause, just enough to be theatrical.

“I was ready before you were,” she said.

Andrew smiled, rang the brass bell once just to irritate her, and got back to work.