Can I self-host pages.gay?

Updated

Yes. pages.gay can be self-hosted if you have your own Gitea or Forgejo server. The site states this directly and points you to its documentation to get started. So if you already run Gitea or Forgejo and want the same "push a repo, get a static site" workflow on your own infrastructure, self-hosting is a supported path.

What you need before starting

  • A Gitea or Forgejo instance you control. These are the two platforms named as the self-hosting requirement. A plain Git server or a different forge is not what the documentation targets.
  • Access to that server's configuration and the ability to run additional services. Self-hosting pages.gay means running the pages service alongside your forge, not just enabling a checkbox inside Gitea/Forgejo.
  • The official docs. The site says to "follow the docs to get started if taking that approach" — the exact install steps live there, not in the marketing copy.

How self-hosting relates to the hosted service

The hosted pages.gay is built around git.gay repositories. The same model applies when self-hosted: your forge hosts the repo, and the pages service turns branches into sites.

Aspect Hosted pages.gay Self-hosted
Forge git.gay Your own Gitea/Forgejo
Who runs the pages service pages.gay You
Setup effort Create a repo and push files Install and configure the pages service per the docs
Custom domains Supported via .domains file + DNS Same mechanism, pointed at your own domain

How sites are structured (so you know what you're replicating)

Understanding the hosted behavior tells you what your self-hosted setup needs to reproduce:

  • User site: create a public repository named pages on the forge, add static files to the main branch, and the site appears at user.pages.gay.
  • Project site: in any repository, create an empty branch named pages, and the site appears at user.pages.gay/repo.
  • Caching: pages.gay uses a cache, so updates may take a few minutes. A hard refresh (Ctrl + Shift + R) can force a cache update.
  • Custom domains: add a .domains file in the same branch as your page content, then point DNS at the service. For subdomains, a CNAME to [branch].[repo].[user].pages.gay. For apex domains, an A record to 213.210.34.143, an AAAA record to 2a0f:9400:6906:1977::143, and a TXT record containing [branch].[repo].[user].pages.gay.

Choosing between hosted and self-hosted

  • Self-host if you already operate Gitea/Forgejo, want the service on your own infrastructure, or need control that the hosted offering doesn't give you.
  • Use the hosted service if you don't run your own forge and just want a site live in minutes — creating a repo on git.gay and pushing files is the whole setup.

The site does not publish self-hosting pricing, resource requirements, or a step-by-step install guide in the material available here. For the actual installation procedure, follow the documentation linked from pages.gay.