The selfhostit site: the app menu, the one-line installer and a contact page. It is plain HTML and CSS with no build step, served by GitHub Pages. The install guide it links to is in selfhostit/docs.
index.html: the home pagecontact.html: the contact pagestyle.css: styles, with a light and a dark themeimg/: app icons and screenshots, copied from the app repositories and resizedllms.txt: a plain-text summary for AI assistants (see llmstxt.org); keep its facts in step with the docs' security page.well-known/security.txt: where to report a security problem (RFC 9116); renewExpiresbefore 2027-11-04
To see it, open index.html in a browser, or run python3 -m http.server here and open
http://localhost:8000.
Copy one <article class="app"> block in index.html, put a 160px icon and a 480px wide
screenshot in img/, and link the app's repository.
-
On GitHub: Settings > Pages > Build and deployment: Deploy from a branch, branch
main, folder/ (root). The site goes live athttps://selfhostit.github.io/website/. -
Still under Pages, enter
selfhostit.orgunder Custom domain and save. TheCNAMEfile in this repository already holds it. -
On Porkbun: Domain Management > your domain > DNS. Delete the default parking records (the
ALIASorArecords for the bare domain and the*andwwwCNAMEs), then add:Type Host Answer A (blank) 185.199.108.153 A (blank) 185.199.109.153 A (blank) 185.199.110.153 A (blank) 185.199.111.153 CNAME www selfhostit.github.io Porkbun's DNS page also has a Quick DNS config menu with a GitHub Pages option that adds the same records.
-
Back on GitHub, wait until the DNS check passes (minutes, sometimes an hour), then tick Enforce HTTPS.
Every push to main then updates the site within a minute.
Optional: to stop anyone else from claiming the domain on GitHub Pages, verify it in the organization settings under Pages > Add a domain.