A content operation with a signature
WriterDean turns a short brief into a published piece that reads like a person wrote it, and keeps the record of how. The dean signs off on every piece, after the humanizer.

Why a dean, and why a signature
Most writing tools stop at the draft. The draft is the easy part. What a content team spends its week on is everything around it: the brand's positioning, the research behind a claim, the keyword the piece has to own, the review, the publish, the refresh six months later. WriterDean runs that whole operation, and the last thing that happens to every piece is a pass that makes it read like a person wrote it.
A dean is the person who signs off. Not the writer, and not the machine: the one who reads the work against the standard and puts a name to it. The mark is that signature, one stroke that writes a W and lifts off in a flourish. In the app it is drawn while a run is thinking, and it settles when the run is done, so the brand and the product's state are the same shape.
The rule behind the name is the one the product keeps most stubbornly: the humanizer cannot be turned off. It is not a feature you can pay to skip. The whole point of the operation is that what leaves it carries a signature a reader would trust.
The story
Five rules the product keeps
The code enforces each one, not a policy page. Where a rule has a check behind it, the check is named.
Principles
- 01The humanizer runs last, and nobody can switch it offEvery piece ends with the same pass: a rewrite for the tells that give machine text away, then a lint that scores it. The app has no setting for it, and the API refuses a request that tries. If the output reads too plain, the fix is in the brand document, not in a toggle.
- 02Every run keeps its traceA finished piece sits beside the record of how it was made: each stage, the skills it loaded with their versions and hashes, the model, the tokens, the cost, the gates it passed. You can read why a sentence exists. So can an auditor.
- 03Skills, not promptsThe pipeline runs vendored marketing skills, written as instructions a person could follow and locked by version and hash. A change to a skill is a commit, and the trace says which version wrote each piece.
- 04Nothing inventedThe site shows no logos we do not have and no quotes nobody said. These pages read their numbers from the product's own catalogs, and the screenshots come from the running interface.
- 05Readable by everyoneEvery color pair on every surface passes WCAG AAA, in both themes. The accessibility run is part of the deploy gate, and a page that fails it does not ship.
- The rule in the APIThe API refuses a request that sets the humanizer off, with 400 and a message that says why. The reference shows the fields that trigger it.Read the rule
Read from the catalogs, not typed in
These counts come from the same files the app runs on. Add a template or a skill and the number here changes with it.
Numbers
- 91templates, each with its own chain
- 51versioned skills with hashes
- 9stages on every long form run
- 12sections in the brand document
- 9publishing channels
Plain parts, one database
How it is built
- Next.js and React
- The site, the app and the API routes, deployed on Vercel.
- Postgres on Supabase
- One database with row level security per workspace, so a query cannot forget a tenant. Sign in with email, a one time code, Google or GitHub.
- A pg-boss worker
- Runs the pipelines, the publishing jobs, the refresh scans and the automations, from the same database.
- OpenAI models, Anthropic optional
- Each stage is routed to a model class. A deterministic mock stands in for tests and demos.
- Stripe and PayPal
- Subscriptions and invoices. Card details never touch our servers.
- Playwright and axe
- End to end tests against a production build, and the AAA accessibility audit that gates every deploy.
Decisions, with dates
A short log of what changed and why. The repository keeps the full version, newest first.
Decisions
The documentation, the API reference, this page, the status page, the legal pages
The footer had pointed at pages that did not exist. They now do, written from the code and the catalogs so they cannot drift from the product.
The product became the visual
We retired the generated backgrounds that said nothing about the business from every screen. The live demo took the hero, and each section shows the artifact it produces.
One type family, one wordmark drawn by hand
Inter carries every size. The wordmark is drawn as paths, so nobody can retype it, and its w is the mark.
First production deployment
The web app went up on Vercel with the domain attached, ahead of the DNS switch that followed. The site you are reading is that same deployment four days and one redesign later.
One address, read by the people who build it
Questions, a bug, a plan that does not fit, a page that says something wrong: write and say which.
Contact
Your first article is on us
Sign up, paste your site, pick a template. You will have a researched, humanized draft with its full trace in a few minutes.
Write your first article free- No card needed
- Free plan included
- Full trace on every run

