Get your own site at yourname.hillow.org. Write posts in a friendly editor, or code the design yourself through Git. Free for Hillow users.
Hillow can host a website for you at yourname.hillow.org. It runs on Ghost, publishing software made for blogs, newsletters and personal sites. You write in a clean editor and your posts go live straight away. If you want to go further, the site's design lives in a Git repo you can edit and push like any other code project.
It's free for anyone with a Hillow account.
What you get
Your own address: yourname.hillow.org, with HTTPS already set up.
The Ghost editor for posts and pages: images, embeds, galleries, code blocks, scheduled posts, drafts, tags.
Settings for your site name, logo, colours, fonts, navigation and social links. No code needed.
A private Git repo with your site's theme (the HTML, CSS and JS that decide how it looks). Push to it and your site updates in about a minute.
Members and comments if you want them: visitors can sign up with their email and get a login link.
Your own Ghost owner account. You're in charge of your site. Hillow staff don't write on it.
The address you want, e.g. jamie.hillow.org. Lowercase letters, numbers and hyphens, 3 to 30 characters.
Your Hillow username (or the email on your Hillow account). Don't have an account yet? Create one first.
Optional: what to call the site. You can change this later.
We set it up by hand, usually within a day or two. Some names are taken by Hillow services (vpn, git, mail, and others), so have a second choice ready.
You'll then get two emails at the address on your Hillow account:
"Reset Password" from Ghost. This is how you set your password the first time. The link is valid for 24 hours.
"Your website is ready" from Hillow, with your links and a short version of this page.
Signing in
Go to https://yourname.hillow.org/ghost/ and sign in with your email and the password you just set.
The first time you sign in from a new browser or device, Ghost emails you a 6-digit code. Type it in and you're through. That's a security feature, not a problem.
Forgot your password? Click Forgot? on the sign-in page.
Your Ghost login is separate from your Hillow login. Changing one doesn't change the other.
Writing posts
In Ghost, click the + next to Posts. Type a title, start writing, and press / on an empty line for the menu of images, videos, buttons, code, dividers and so on. When you're happy, click Publish.
Pages (an About page, say) work the same way, under Pages. To put a page in your site's menu, go to Settings → Navigation.
Go to Settings → Design & branding. Here you can set your accent colour, logo, cover image and fonts, and change layout options the theme offers. Changes show in the preview on the right before you save.
To try a completely different design, download a free Ghost theme (there are lots at ghost.org/marketplace) and upload the .zip under Settings → Design & branding → Change theme. Uploaded themes are temporary, though. The next time someone pushes to your Git repo, the site switches back to the repo's theme. If you want to keep a downloaded theme, put its files in your repo instead.
Changing how it looks, with code
Your theme is in a private repo on git.hillow.org called hillow-blogs/yourname-theme. It starts as a copy of Source, Ghost's default theme. Templates are Handlebars files (.hbs), plus ordinary CSS and JavaScript.
One-time setup
Sign in at git.hillow.org with your Hillow account. You only need to do this once; it creates your Git account. About a minute later you'll have write access to your repo.
Add your SSH key under your avatar → Settings → SSH / GPG Keys. (No key yet? Run ssh-keygen -t ed25519 and paste the contents of the .pub file it creates.)
Clone the repo. Open it on git.hillow.org, click SSH next to the clone box, copy the address, and run git clone followed by that address. (It's also in your welcome email.)
Making a change
Edit the files, then:
git add -A git commit -m "Bigger headings" git push
Within about a minute your site is running the new version. In Gitea, the commit gets a green check when it's live, or a red X if Ghost refused the theme. Hover over the X to see why (usually a missing file or a template error). Your site keeps running the last working version until you push a fix.
Only the main branch goes live. Other branches are yours to experiment on.
Previewing on your computer
To see changes before pushing, install Ghost locally:
npm install -g ghost-cli mkdir ghost-local && cd ghost-local ghost install local
Then link your theme folder into content/themes/ and pick it in the local Ghost's design settings. Running npx gscan . inside your theme folder checks it the same way your live site will.
What you can and can't do
Anything a Ghost theme can do: change every page template, add CSS frameworks, JavaScript, web fonts, custom settings that show up in the Design screen.
Nothing runs on our servers except Ghost itself. There's no npm install or build step on our side. If you use Sass, Tailwind or a bundler, build on your computer and commit the output.
30 MB maximum per theme. Put photos in your posts instead; Ghost stores those separately.
Don't put passwords or API keys in the theme. Everything in it is public.
Rules
Keep it legal and don't host anything you don't have the rights to.
No spam, phishing, malware or crypto-mining scripts.
It's a website, not cloud storage. Big video files belong on YouTube or similar; link or embed them.
Hillow keeps backups, but it's your content. Export it now and then under Settings → Advanced → Migration tools.
If a site breaks these rules we'll take it down and get in touch.
Not available yet
Newsletters. Ghost can email new posts to subscribers, but sending bulk email isn't set up here yet. Login links and password emails work fine.
Paid memberships. Not supported.
Using your own domain
Already own a domain, like jamie.com? Your site can live there instead of jamie.hillow.org. Hillow doesn't sell domains, so you buy one yourself from any registrar (Porkbun, Namecheap, Cloudflare and so on). It's usually about $10 a year.
Email [email protected] with your site name and the domain you want to use.
We'll reply with two DNS records: a CNAME pointing to domains.hillow.org and a TXT record. Add both in your registrar's DNS settings. If your domain is on Cloudflare, set the CNAME to "DNS only" (grey cloud).
Wait. DNS usually updates within 15 minutes, sometimes a few hours. Once it does, we set up HTTPS and move the site over automatically. You'll get an email when it's live.
After that:
Visitors see https://jamie.com. Old jamie.hillow.org links redirect there.
You still sign in at jamie.hillow.org/ghost/.
Git pushes work the same as before.
Keep the DNS records. If you delete them, the site stops loading on your domain.
Root domains (jamie.com rather than blog.jamie.com): some registrars won't allow a CNAME on the root. Look for an option called ALIAS, ANAME or "CNAME flattening". If yours doesn't have one, tell us and we'll use www.jamie.com instead. Then turn on your registrar's redirect from jamie.com to www.jamie.com.
Something not working?
Never got the "Reset Password" email: check spam, then go to /ghost/ on your site and use Forgot?. Still nothing? Email support.
Your domain still isn't live after a day: check the CNAME points to domains.hillow.org (not proxied), then email support.
Push worked but the site didn't change: look at the commit in Gitea. Red X means Ghost rejected it (the reason is in the status). No mark at all after a few minutes means our side is stuck; email support.
"Permission denied" when pushing: sign in to git.hillow.org once, wait a minute, and check your SSH key is added.
Write to [email protected] about anything. Replies come from a real person.
For agents
This section is for AI coding assistants (Copilot, Claude, Cursor and similar) working on a Hillow-hosted Ghost site on behalf of its owner. Your repo also contains an AGENTS.md with the same rules.
Platform. Ghost 6.x, self-hosted. Site URL https://<sub>.hillow.org, or the owner's own domain once one is connected. Admin and the Admin API always stay on https://<sub>.hillow.org/ghost/. With a custom domain, Ghost's url (and every link it generates) uses that domain, and <sub>.hillow.org 301-redirects everything outside /ghost/ to it. Theme repo hillow-blogs/<sub>-theme on https://git.hillow.org. SSH remote: user git, host ssh-git.hillow.org, port 22, path hillow-blogs/<sub>-theme.git (scp-style: user, @, host, colon, path). The repo's clone box and the owner's welcome email show the full string.
Deploy contract.
Trigger: a new commit on main. Polled about every 60 seconds.
The tree is zipped exactly as committed (minus .git/ and node_modules/), uploaded with the Ghost Admin API and activated. Nothing in the repo is executed. There is no CI, Actions are disabled, and there's no build step.
Result: Gitea commit status, context hillow/ghost-deploy. success means it's live. failure means Ghost's gscan validator rejected it, and the description holds the fatal rule(s) and gscan code(s).
Read status with the Gitea API: GET https://git.hillow.org/api/v1/repos/hillow-blogs/<sub>-theme/commits/<sha>/status (needs the owner's Gitea token with read:repository).
Size limit: 30 MB zipped.
Before pushing.
npx gscan .
Fix every error; warnings are fine. Keep package.jsonname equal to <sub>-theme. Keep engines.ghost, and config.posts_per_page. Required templates are index.hbs and post.hbs. default.hbs must include {{ghost_head}} and {{ghost_foot}}.
Content is not in the repo. Posts, pages, tags, members and settings live in Ghost's database. To manage them programmatically, the owner creates a custom integration in Ghost (Settings → Advanced → Integrations → Add custom integration) and gives you its Admin API key. Use the Admin API at https://<sub>.hillow.org/ghost/api/admin/ (send Accept-Version: v6.0). Read-only access uses the Content API key from the same screen (Content API docs). Ghost has an official JS client (@tryghost/admin-api).
Don't. Don't commit secrets (the theme is public). Don't try to add server-side code, custom routes files or redirects through the theme (routes.yaml and redirects are uploaded in Ghost under Settings → Labs, by the owner). Don't send bulk email; newsletters are disabled.
Escalation. Anything requiring server access (Ghost config, connecting or changing a custom domain, more storage, restores) goes to [email protected], sent by the owner.