Skip to content

Blog / Aug 28, 2026

This site ships without a backend

Content first, Appwrite later. The public site should not wait on a console that does not exist yet.

  • shipping
  • appwrite
  • coolify

The AI Builder public site is a Nuxt app with Markdown in git. That is the product for now.

There will be a self-hosted Appwrite instance on Coolify. There is not one today. Pretending otherwise would mean a Cloud endpoint in the repo, a project ID that is not ours, or a contact form that dies in production. None of that is acceptable.

So the contract is:

  • Runtime config comes from the environment: endpoint, project ID, site URL.
  • Empty values are valid. The site builds. The pages render.
  • When Appwrite exists, it will be https://… on our metal, not *.cloud.appwrite.io.

If you are waiting for a CMS before you publish, you are waiting on the wrong thing. Put the words in a file. Deploy the container. Wire the database when it has a job to do.